了解一下python內(nèi)建模塊collections
在使用Python的過程中,一定是離不開數(shù)據(jù)結(jié)構(gòu)的, 也就是List-列表,Tuples-元組,Dictionaries-字典。
那實(shí)際應(yīng)用中我們更多的還是要去操作這些結(jié)構(gòu)里的數(shù)據(jù)。比如,在列表后面添加元素,那么就會(huì)用到append() 方法。
那除了這些本身的操作方法之外,還有一個(gè)Python內(nèi)建模塊——collections,也提供了不少使用的方法,今天來捋一下。
一、Counter
這是一個(gè)計(jì)數(shù)器,我們可以用來方便的統(tǒng)計(jì)出一些元素出現(xiàn)的次數(shù),比如String、List、Tuples等等。
String
from collections import Counter
c = Counter("HelloKitty")
print(c)
#運(yùn)行結(jié)果:
Counter({'l': 2, 't': 2, 'H': 1, 'e': 1, 'o': 1, 'K': 1, 'i': 1, 'y': 1})
List
from collections import Counter
c = Counter(["蘋果", "櫻桃", 1, 1, 4, 4, 5])
print(c)
#運(yùn)行結(jié)果:
Counter({1: 2, 4: 2, '蘋果': 1, '櫻桃': 1, 5: 1})
二、deque
我們很喜歡用list來存放數(shù)據(jù),因?yàn)榉浅5姆奖恪5莑ist的缺點(diǎn)也很明顯,如果你是按索引訪問元素就很快,但是插入和刪除元素就很慢。
當(dāng)然了,數(shù)據(jù)量小的時(shí)候肯定是感知不到的,只有當(dāng)數(shù)據(jù)量大的時(shí)候,你才會(huì)發(fā)現(xiàn)這個(gè)缺點(diǎn),因?yàn)閘ist是線性數(shù)據(jù)結(jié)構(gòu),比如插入這個(gè)動(dòng)作,需要把它后面的元素都挪一位。
deque除了實(shí)現(xiàn)list的append()和pop()外,還提供了appendleft()和popleft(),這樣的話我們可以很方便的向著列表的另一頭,進(jìn)行添加和移除操作了。
from collections import deque
deque_list = deque(['a', 'b', 'c', 'd'])
deque_list.append('蘋果')
deque_list.appendleft('吃')
print(deque_list)
#運(yùn)行結(jié)果:
deque(['吃', 'a', 'b', 'c', 'd', '蘋果'])
三、OrderedDict
使用Python,大家自然知道Dict字典中的key是無(wú)序的。那如果你想要保持key的順序的話,用OrderedDict即可。
from collections import OrderedDict list_a = [(1, "蘋果"), (2, "香蕉"), (3, "西瓜"), (4, "芒果")] order_dict = OrderedDict(list_a) print(order_dict) #運(yùn)行結(jié)果: D:\Daily λ python whatiscollections.py OrderedDict([(1, '蘋果'), (2, '香蕉'), (3, '西瓜'), (4, '芒果')])
如果有場(chǎng)景中需要使用到,可以試試這幾種用法。
以上就是了解一下python內(nèi)建模塊collections的詳細(xì)內(nèi)容,更多關(guān)于python collections的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
- 使用python將excel數(shù)據(jù)導(dǎo)入數(shù)據(jù)庫(kù)過程詳解
- 用Python將Excel數(shù)據(jù)導(dǎo)入到SQL Server的例子
- Python制作數(shù)據(jù)導(dǎo)入導(dǎo)出工具
- Python使用xlrd模塊操作Excel數(shù)據(jù)導(dǎo)入的方法
- python實(shí)現(xiàn)zencart產(chǎn)品數(shù)據(jù)導(dǎo)入到magento(python導(dǎo)入數(shù)據(jù))
- 淺談Python數(shù)學(xué)建模之線性規(guī)劃
- Python進(jìn)行統(tǒng)計(jì)建模
- python實(shí)現(xiàn)數(shù)據(jù)分析與建模
- Python創(chuàng)建模塊及模塊導(dǎo)入的方法
- 淺談Python數(shù)學(xué)建模之?dāng)?shù)據(jù)導(dǎo)入
相關(guān)文章
python requests模擬登陸github的實(shí)現(xiàn)方法
這篇文章主要介紹了python requests模擬登陸github的實(shí)現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-12-12
Python實(shí)現(xiàn)大數(shù)據(jù)收集至excel的思路詳解
這篇文章主要介紹了Python實(shí)現(xiàn)大數(shù)據(jù)收集至excel的思路,本文通過完整代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-01-01
Python修改文件往指定行插入內(nèi)容的實(shí)例
今天小編就為大家分享一篇Python修改文件往指定行插入內(nèi)容的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-01-01
Python實(shí)現(xiàn)批量修改文件名實(shí)例
這篇文章主要介紹了Python實(shí)現(xiàn)批量修改文件名的方法,實(shí)例分析了兩種實(shí)現(xiàn)批量修改文件名的技巧,涉及os.rename重命名方法、正則替換及字符串操作的相關(guān)技巧,需要的朋友可以參考下2015-07-07
Python批量加密Excel文件的實(shí)現(xiàn)示例
在日常工作中,保護(hù)敏感數(shù)據(jù)是至關(guān)重要的,本文主要介紹了Python批量加密Excel文件的實(shí)現(xiàn)示例,具有一定的參考價(jià)值,感興趣的可以了解一下2023-12-12
Python PyQt4實(shí)現(xiàn)QQ抽屜效果
這篇文章主要為大家詳細(xì)介紹了Python PyQt4實(shí)現(xiàn)QQ抽屜效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-04-04

