collections 集合模組

2022-06-23 15:33:33 字數 1518 閱讀 8448

標準庫 collections 是 python 內建的一個集合模組,裡面封裝了許多集合類。

collections模組包含了除list、dict、和tuple之外的容器資料型別,如counter、defaultdict、deque、namedtuple、orderdict等。

這個模組實現了特定目標的容器,以提供python標準內建容器 dict , list , set , 和 tuple 的替代選擇。參考python3.8.1文件

類/物件

說明namedtuple()

建立命名元組子類的工廠函式

deque

chainmap

類似字典(dict)的容器類,將多個對映集合到一個檢視裡面

counter

字典的子類,提供了可雜湊物件的計數功能

ordereddict

字典的子類,儲存了他們被新增的順序

defaultdict

字典的子類,提供了一個工廠函式,為字典查詢提供一個預設值

userdict

封裝了字典物件,簡化了字典子類化

userlist

封裝了列表物件,簡化了列表子類化

userstring

封裝了列表物件,簡化了字串子類化

deque 是雙邊佇列(double-ended queue),具有佇列和棧的性質,在 list 的基礎上增加了移動、旋轉和增刪等。deque是通過extend方法初始化集合元素的。

deque(maxlen=n)建立一個固定長度的佇列。當有新紀錄加入而佇列已滿時會自動移除最老的那條記錄。

d = collections.deque()

說明在最右邊新增一個元素,此時 d=deque('a')

在最左邊新增一個元素,此時 d=deque(['b', 'a'])

d.extend(['c','d'])

在最右邊新增所有元素,此時 d=deque(['b', 'a', 'c', 'd'])

d.extendleft(['e','f'])

在最左邊新增所有元素,此時 d=deque(['f', 'e', 'b', 'a', 'c', 'd'])

d.pop()

將最右邊的元素取出,返回 'd',此時 d=deque(['f', 'e', 'b', 'a', 'c'])

d.popleft()

將最左邊的元素取出,返回 'f',此時 d=deque(['e', 'b', 'a', 'c'])

d.rotate(-2)

向左旋轉兩個位置(正數則向右旋轉),此時 d=deque(['a', 'c', 'e', 'b'])

d.count('a')

佇列中'a'的個數,返回 1

d.remove('c')

從佇列中將'c'刪除,此時 d=deque(['a', 'e', 'b'])

d.reverse()

將佇列倒序,此時 d=deque(['b', 'e', 'a'])

deque是執行緒安全的,也就是說你可以同時從deque集合的左邊和右邊進行操作而不會有影響。

Python collections 集合類

目錄1 2 nametuple 1 3 defaultdict 1 4 deque 1 5 counter 1 6 orderdict 1 7 chainmap 擁有的資料結構 all deque defaultdict namedtuple userdict userlist userstring...

collections集合的總括。

序言 還有,這份微小型總結肯定是從很多博文中摘取精華拿過來的,因為我還是一個菜鳥,不能自己寫出自己的見解,還是在學習的路程中,見諒。 大神真...

Collections集合工具類的方法

返回型別為boolean型別,執行完操作不接收也行 其中,靜態方法,與物件無關,類名點方法名直接呼叫 點點點為可變引數,隨便填寫幾個引數都可以 int資料型別的封裝類integer類sort方法 集合只能儲存物件 string型別sort方法 其中,int基本資料型別的封裝類和string類因為在這...