python內建模組之collections(六)

2022-07-04 23:42:19 字數 2224 閱讀 2501

collections是python內建的乙個集合模組,提供了許多有用的集合類。

import collections

dt =

o_dict = collections.ordereddict(dt)

# 通用方法

print(o_dict.keys()) # 返回字典所有的鍵順序列表

print(o_dict.items()) # 返回字典鍵值對元組組成的列表

print(o_dict.values()) # 返回字典所有的值組成的列表

print(o_dict.get('a')) # 返回以鍵查詢的值,沒有返回none

print(o_dict.pop('a')) # 以鍵彈出乙個鍵值對

print(o_dict.clear()) # 清空字典,返回none

print(o_dict.copy()) # 複製乙個新的字典

print(o_dict.update()) # 更新字典,沒有新增新的,有就更新

print(o_dict.setdefault('h', 9)) # 獲取乙個鍵的值,如果沒有用預設值替代同時加入到字典,有直接返回值

print(o_dict.fromkeys(['a', 'f', 'g'], value=10)) # 建立乙個值相同的字典,和原來的字典無關,類方法

# 特殊方法

print(o_dict.popitem(last=true)) # 以元組的方式從右端彈出鍵值對,last=false從左邊彈出

print(o_dict.move_to_end('a', last=true)) # 將乙個鍵值對移到字典的末尾

import collections

dt =

# 可接受乙個資料型別或無引數函式作為初始化

o_dict = collections.defaultdict(list)

o_dict1 = collections.defaultdict(lambda :10)

print(o_dict)

print(o_dict.get('a')) # 如果鍵存在,預設值為10

print(o_dict1)

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

import collections

# 返回乙個tuple型別,可以通過自定義的屬性訪問而不是索引

user = collections.namedtuple('user', ['age','name'])

user = user(19,'xiaoming')

print(user.name)

print(user.age)

import collections

l = ['a', 'b', 'c']

dq = collections.deque(l)

print(dq.pop()) # 從右邊彈出

print(dq.popleft()) # 從左邊彈出

print(dq.rotate(3)) # 當引數為正,從右邊數n個移到左邊;引數為負數時,從左邊移動

import collections

l = 'ffdsgdfgasfsghdgdaf'

c = collections.counter(l) # 直接生成以字元為鍵,個數為值的字典,值必須為int

print(c.most_common(3)) # 輸出排名前3的元組列表

print(list(c.elements())) # 輸出字元列表,從多到少

print(c.subtract('fsdfsfsf')) # 計算相減,得到相減後的字典

print(c)

import collections

dt1 =

dt2 =

c = collections.chainmap([dt1, dt2]) # 建立乙個對映檢視將多個字典合在一起

# 特殊的方法

print(c.maps) # 返回所有的字典列表

# 在字典列表頭部插入字典,如果其引數為空,則會預設插入乙個空字典,並且返回乙個改變後的chainmap物件

print(c.new_child())

出處:

python內建模組之random模組

import random print random.random 隨機 0 1 浮點數 print random.uniform 1,10 隨機指定範圍的浮點數 print random.randint 1,3 隨機整數1 3,包括3 print random.randrange 1,3 1 3隨...

python內建模組之XML模組

xml和json 一樣都是可以跨平台的,只是xml相比較,老一點 import xml.etree.elementtree as et a et.parse first xml.xml 載入乙個檔案 root a.getroot print root 乙個xml檔案 print root.tag x...

python內建模組之re模組

在python要想使用正則必須借助於模組,re就是其中之一 查詢字串中所有匹配到的字元,並返回乙個列表,沒有匹配資料則返回乙個空列表 import re re.findall 正規表示式 帶匹配的文字 根據正則匹配除所有符合條件的資料 res re.findall b eva jason jacks...