1.counter
counter是dictionary對象的一個子類。collections模塊中的counter()函數接受iterable,例如list或tuple,并返回計數器字典。字典的鍵將是iterable的唯一元素,每個鍵的值將是iterable中元素的計數。
2.defaultdict
該函數的工作原理與普通的python字典完全相同,額外的好處是當你試圖訪問一個不存在的鍵時,它不會拋出錯誤。
相反,它使用默認值初始化key。默認值是根據創建DefaultDict對象時作為參數傳遞的數據類型自動設置的。
3.deque
隊列是計算機科學中遵循先進先出(fifo)原則的基本數據結構。簡單地說,這意味著添加到隊列中的第一個對象也必須是要刪除的第一個對象。我們只能在隊列前面插入內容,只能從后面刪除內容——隊列中間不能執行任何操作。collections庫的deque實現了該功能的優化版本。該實現的一個關鍵特性是保持隊列大小,即如果將隊列的最大大小設置為10,則deque將根據fifo原則添加和刪除元素,以保持最大大小為10。這是目前為止python中隊列的最佳實現。
4.namedtuple
在python中創建常規元組時,其元素是通用的和未命名的。這迫使你記住每個元組元素的確切索引。namedtuple就是這個問題的解決方案。
namedtuple()返回一個元組,該元組中每個位置的名稱都是固定的,而namedtuple對象的名稱是通用的。要使用namedtuple,首先為它創建一個模板。下面的代碼創建一個名為「person」的namedtuple模板,該模板具有「name」、「age」和「job」參數。