Python的收集整理:collections模塊

collections模塊

collections模塊是比較常用的模塊预侯,里面有很多實(shí)用的類愉阎。將最近收集到的用法進(jìn)行了一些梳理,時(shí)不時(shí)會(huì)更新。

deque雙向隊(duì)列

注意:queue模塊中也有deque驼修,用法相同

創(chuàng)建:

from collections import deque
q = deque()
q = deque([1,2,3])
q = deque('abc')

訪問(wèn),操作(與list類似):

len(q)
q[0]
q[-1]

左右添加伍俘,刪除:

q = deque('abc')  #['a','b','c']
q.append('d')  #['a','b','c','d']
q.appendleft('e')  #['e','a','b','c','d']
q.pop()  #返回刪除元素 ['e','a','b','c']
q.popleft()  #返回刪除元素 ['a','b','c']

刪除指定元素:

q = deque('abc')  #['a','b','c']
q.remove('b')  #['a','c']

清空:

q.clear()

旋轉(zhuǎn):

q.rotate(+n)   #向>>>轉(zhuǎn)
q = deque('abcde')  #['a','b','c','d','e']
q.rotate(2)  #['d','e','a','b','c']
q.rotete(-n)  #向<<<轉(zhuǎn)
q = deque('abcde')  #['a','b','c','d','e']
q.rotate(-2)  #['c','d','e','a','b']

創(chuàng)建時(shí)可以限制長(zhǎng)度

q = deque(maxlen=5)
q = deque([1,2,3],maxlen=4)

當(dāng)長(zhǎng)度超過(guò)限制邪锌,再?gòu)囊贿吿砑訒r(shí),另一邊將彈出

q = deque([1,2,3],maxlen=4)  #[1,2,3]
q.append(4)  #[1,2,3,4]
q.append(5)  #[2,3,4,5]
q.appendleft(6)  #[6,2,3,4]

defaultdict 默認(rèn)字典

訪問(wèn)defaultdict時(shí)癌瘾,如果key不存在觅丰,則會(huì)返回默認(rèn)值(通過(guò)創(chuàng)建時(shí),調(diào)用設(shè)置的函數(shù)返回)

創(chuàng)建

from collections import defaultdict
def haha():
  return 2
d = defaultdict(haha)  #傳入函數(shù)名
d['a'] = 1
print(d['a'],d['b'])  #d = {'a':1,'b':2}

#也可以傳入已經(jīng)存在的字典
add = {'c':3, 'd':4}
d = defaultdict(haha,add)
d['a'] = 1
print(d['a'], d['b'], d['c'], d['d'])  #1,2,3,4

小例子

s = [('yellow', 1), ('blue', 2), ('yellow', 3), ('blue', 4), ('red', 1)]
d = defaultdict(list)  #key不存在時(shí)返回一個(gè)空l(shuí)ist,[]
for k, v in s:
  d[k].append(v)
list(d.items())  #[('blue',[2,4]),('red',[1]),('yellow',[1,3])]
s = 'mississippi'
d = defaultdict(int)  #key不存在時(shí)返回0
for k in s:
  d[k] += 1
list(d.items())  #[('i', 4), ('p', 2), ('s', 4), ('m', 1)]

這些函數(shù)都可以:list(),str(),int(),tuple(),float(),dict(),set()等
defaultdict和dict.setdefault()方法等價(jià)妨退,但速度更快

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末妇萄,一起剝皮案震驚了整個(gè)濱河市蜕企,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌冠句,老刑警劉巖轻掩,帶你破解...
    沈念sama閱讀 221,820評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異懦底,居然都是意外死亡唇牧,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,648評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門(mén)聚唐,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)丐重,“玉大人,你說(shuō)我怎么就攤上這事杆查“绲耄” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 168,324評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵亲桦,是天一觀的道長(zhǎng)崖蜜。 經(jīng)常有香客問(wèn)我,道長(zhǎng)客峭,這世上最難降的妖魔是什么豫领? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 59,714評(píng)論 1 297
  • 正文 為了忘掉前任,我火速辦了婚禮舔琅,結(jié)果婚禮上氏堤,老公的妹妹穿的比我還像新娘。我一直安慰自己搏明,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,724評(píng)論 6 397
  • 文/花漫 我一把揭開(kāi)白布闪檬。 她就那樣靜靜地躺著星著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪粗悯。 梳的紋絲不亂的頭發(fā)上虚循,一...
    開(kāi)封第一講書(shū)人閱讀 52,328評(píng)論 1 310
  • 那天,我揣著相機(jī)與錄音样傍,去河邊找鬼横缔。 笑死,一個(gè)胖子當(dāng)著我的面吹牛衫哥,可吹牛的內(nèi)容都是我干的茎刚。 我是一名探鬼主播,決...
    沈念sama閱讀 40,897評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼撤逢,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼膛锭!你這毒婦竟也來(lái)了粮坞?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 39,804評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤初狰,失蹤者是張志新(化名)和其女友劉穎莫杈,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體奢入,經(jīng)...
    沈念sama閱讀 46,345評(píng)論 1 318
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡筝闹,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,431評(píng)論 3 340
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了腥光。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片关顷。...
    茶點(diǎn)故事閱讀 40,561評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖柴我,靈堂內(nèi)的尸體忽然破棺而出解寝,到底是詐尸還是另有隱情,我是刑警寧澤艘儒,帶...
    沈念sama閱讀 36,238評(píng)論 5 350
  • 正文 年R本政府宣布聋伦,位于F島的核電站,受9級(jí)特大地震影響界睁,放射性物質(zhì)發(fā)生泄漏觉增。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,928評(píng)論 3 334
  • 文/蒙蒙 一翻斟、第九天 我趴在偏房一處隱蔽的房頂上張望逾礁。 院中可真熱鬧,春花似錦访惜、人聲如沸嘹履。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,417評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)砾嫉。三九已至,卻和暖如春窒篱,著一層夾襖步出監(jiān)牢的瞬間焕刮,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,528評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工墙杯, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留配并,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,983評(píng)論 3 376
  • 正文 我出身青樓高镐,卻偏偏與公主長(zhǎng)得像溉旋,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子嫉髓,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,573評(píng)論 2 359

推薦閱讀更多精彩內(nèi)容