python中元組的用法 如何在python中引入高性能數據類型?
如何在python中引入高性能數據類型?1. CounterCounter是dictionary對象的子類。collections模塊中的counter()函數接受Iterable,例如list或tu
如何在python中引入高性能數據類型?
1. Counter
Counter是dictionary對象的子類。collections模塊中的counter()函數接受Iterable,例如list或tuple,并返回counter字典。字典的鍵將是Iterable的唯一元素,每個鍵的值將是Iterable中元素的計數。
2. Defaultdict
此函數的工作原理與普通的Python字典完全相同,另外一個優(yōu)點是當您試圖訪問一個不存在的密鑰時,它不會拋出錯誤。
相反,它使用默認值初始化密鑰。默認值是在創(chuàng)建defaultdict對象時根據作為參數傳遞的數據類型自動設置的。
3. Deque
隊列是計算機科學中遵循先進先出原理的一種基本數據結構。簡而言之,這意味著添加到隊列的第一個對象也必須是要刪除的第一個對象。我們只能在隊列前面插入內容,只能從后面刪除內容—在隊列中間什么也做不了。集合庫的Deque實現了該函數的優(yōu)化版本。此實現的一個關鍵特性是保持隊列大小,即如果隊列的最大大小設置為10,則deque將根據FIFO原則添加和刪除元素,以保持最大大小為10。這是迄今為止Python中隊最好的實現。
在Python中創(chuàng)建常規(guī)元組時,它們的元素是通用的和未命名的。這迫使您記住每個元組元素的確切索引。Namedtuple就是這個問題的解決方案。
Namedtule()返回一個元組,其中每個位置的名稱是固定的,而Namedtule對象的名稱是通用的。要使用namedtuple,首先為它創(chuàng)建一個模板。下面的代碼創(chuàng)建一個名為“person”的命名元組模板,該模板具有“name”、“age”和“job”參數。
python字典和元組遍歷速度哪個快?
一定是元組,不僅遍歷速度快。元組也使用更少的內存。當然,代價是靈活的行沒有字典方便。不僅可以通過索引讀取元素,而且元組的內容不能直接修改。如果你的問題解決了,請采納!如果還沒有解決,請繼續(xù)詢問
書籍。你可以去巨星數據庫和獨秀學術搜索。您還可以直接訪問庫中的數據結構和python。有很多,