Python集合模組 collections

2021-09-27 21:29:20 字數 2931 閱讀 1381

是乙個函式,它用來建立乙個自定義的tuple物件,並且規定了tuple元素的個數,並可以用屬性而不是索引來引用tuple的某個元素。

# namedtuple('名稱', [屬性list]):

from collections import namedtuple

point = namedtuple(

'point',(

['x'

,'y'])

)p = point(1,

2)print

(p.x,p.y)

# 1 2

print

(isinstance

(p,point)

)print

(isinstance

(p,tuple))

# true

# true

使用list儲存資料時,按照索引訪問元素很快,但是插入和刪除元素很慢

deque是為了高效實現插入和刪除操作的雙向列表,適合佇列和棧

常見方法:

from collections import deque

q = deque(

['a'

,'b'

,'c'])

'x')

'y')

print

(q)q.pop(

)print

(q)q.popleft(

)print

(q)# deque(['y', 'a', 'b', 'c', 'x'])

# deque(['y', 'a', 'b', 'c'])

# deque(['a', 'b', 'c'])

常見dict的用法:

print

(dict()

)# 建立空字典

print

(dict

(a1=

'a',a2=

'b',c3=

'c')

)# 傳入關鍵字

print

(dict

(zip([

'one'

,'two'

,'three'],

[1,2

,3])

))# 對映函式方式來構造字典

d1 =

dict([

('one',1

),('two',2

),('three',3

)])# 可迭代物件方式來構造字典

print

(d1)

print

(d1[

'one'])

# 只能獲取指定值

# print(d1['four']) # keyerror: 'four'

# {}

# #

# # 1

defaultdict:

使用dict時,如果引用的key不存在,就會丟擲keyerror。

如果希望key不存在時,返回乙個預設值,就可以用defaultdict:

from collections import defaultdict

dd = defaultdict(

lambda

:'novalue'

)# 制定空缺值

dd['one']=

1print

(dd[

'one'])

print

(dd[

'two'])

# 1# novalue

ordereddict:

使用dict時,key是無序的。在對dict做迭代時,我們無法確定key的順序

注意,ordereddict的key會按照插入的順序排列,不是key本身排序:

from collections import ordereddict

d2 = ordereddict([(

'one',1

),('two',2

),('three',3

)])print

(d2)

# ordereddict([('one', 1), ('two', 2), ('three', 3)])

用於追蹤值的出現次數

counter類繼承dict類,所以它能使用dict類裡面的方法

常見方法:

elements()

most_common(指定乙個引數n,列出前n個元素,預設列出所有)

items(從dict類中繼承的方法)

update(增加元素)

subtract(原來的元素減去新傳入的元素)

from collections import counter

c = counter(

'abbcccddd'

)print

(c)print

(c['b'])

# counter()

# 2print

(c.elements())

print

(c.most_common(2)

)for i in c.items():

print

(i)c.update(

['x'

,'x'

,'y'])

print

(c)c.subtract(

'y')

# 刪除數量

print

(c)#

# [('d', 3), ('c', 3)]

# ('a', 1)

# ('d', 3)

# ('b', 2)

# ('c', 3)

# counter()

# counter()

python常用模組集合 python常用模組集合

原生js可愛糖果數字時間特效 效果展示 數字採用漂亮的糖果 設計 效果圖 如下 關於在linux64位下安裝xampp 網上關於這個主題的內容比較少,所以就寫一下按裝後的心得.之前一直在windows下用xampp,想在linux下也體驗一把,可是自己的linux裝的是64位的在xampp的官網上h...

collections 集合模組

標準庫 collections 是 python 內建的乙個集合模組,裡面封裝了許多集合類。collections模組包含了除list dict 和tuple之外的容器資料型別,如counter defaultdict deque namedtuple orderdict等。這個模組實現了特定目標的...

個人使用python中模組集合 方便記憶

collections模組中包含了很多常用的方法。如計數器 有序字典等。a counter方法是乙個計數器,用來記錄各個元素出現的次數 from collections import counter a 123asdfssdgfgfjdfewwrw b 2,3,4,5,6,6,2,2 print c...