collections工具庫中的一些容器

2021-10-24 08:28:34 字數 1439 閱讀 6869

1.defaultdict

#defaultdict解決使用dict最常見的問題,就是key為空的情況

#方法1:在每次get之前寫乙個if判斷

if key in dict:

return dict[key]

else:

return none

data = [(1, 3), (2, 1), (1, 4), (2, 5), (3, 7)]

d = {}

for k, v in data:

if k in d:

else:

d[k] = [v]

d

#方法2:用defaultdict

from collections import defaultdict

data = [(1, 3), (2, 1), (1, 4), (2, 5), (3, 7)]

d = defaultdict(list)

for k,v in data:

d

2.counter

#counter

from collections import counter

counter = counter(words)

print(counter)

#要篩選topk

counter.most_common(2)

3.deque

#queue是佇列,deque是雙端佇列

from collections import deque

dque = deque(maxlen=10)

# 假設我們想要從檔案當中獲取最後10條資料

for i in f.read():

4.namedtuple

#namedtuple

from collections import namedtuple

#這是個類

student = namedtuple('student',['name','score','age'])

#這是個例項

student = student(name='xiaoming',score=99,age=20)

print(student.name)

#通過傳入defaults引數來定義缺失值

#在python的規範當中,必選引數一定在可選引數前面。所以nuamdtuple會自動右對齊

student = namedtuple('student', ['name', 'score', 'age'], defaults=(0, 0))

集合 Collections工具

1.定義 collections是集合類的乙個工具類,它提供了一系列靜態方法用於對容器中的元素進行排序和搜尋等一系列操作。注 collection是乙個集合介面,而collections是乙個有著操作容器的方法的工具類。2.方法 1 reverse list list 使list中的資料發生反轉 1...

Collections與Arrays工具類

1.collections.sort list 對集合進行排序,如果不是自然順序,需要儲存類實現comparable介面,或者傳入比較器 2.collections.binarysearch 集合名,查詢元素 如果不是自然順序,需要儲存類實現comparable介面,或者傳入比較器 3.collec...

Collections工具類小結

collections 是針對集合進行操作的工具類。裡面包含了排序和查詢等方法。collections和 collection 的區別?collections 是針對集合進行操作的工具類,包含了排序和查詢等功能。collection 是單列集合的頂層介面,定義了單列集合的共性功能。collectio...