【Python】計數器 Counter
在瞭解 Counter 之前,請大家思考一個問題,現在有包含多個詞彙的列表:
list1 = ['red','green','red','blue','green','red']
該如何去統計列表中各詞彙出現的次數?
如果再深入一些,如何統計一本小說中,作者所用詞彙出現的次數?
Python 裡提供了一個優雅簡潔的解決方案:Counter
關於 Counter ,在官方文件中可以找到如下描述:
A Counter is a dict subclass for counting hashable objects. It is an unordered collection where elements are stored as dictionary keys and their counts are stored as dictionary values. Counts are allowed to be any integer value including zero or negative counts.
Counter 是 dict 的子類,是用於計數。它是一個無序的集合,其中元素儲存為字典鍵,其計數儲存為字典值。計數允許為包括零或負計數的任何整數值。
在 Python Shell 裡演示一下。初始化一個 Counter 物件的幾種方法:
初始化可迭代物件
>>> from collections import Counter >>> Counter('adffdsads') Counter({'d': 3, 'f': 2, 's': 2, 'a': 2})
初始化對映物件
>>> Counter({'red':1,'green':2}) Counter({'green': 2, 'red': 1})
初始化關鍵字引數物件
>>> Counter(cats=4,dogs=8) Counter({'dogs': 8, 'cats': 4})
Counter 是 dict 的子類,所以你可以放心地像 dict 一樣來使用它。具體可參考 【Python 第37課】 字典。
下面看個 Counter 的常用方法:
most_common(n)
返回一個列表,包含 n 個最常見的元素已經他們的計數,如果 n 為空,則返回所有元素。
>>> c = Counter('adffdsads') >>> c.most_common(3) [('d', 3), ('a', 2), ('f', 2)]
透過此方法,你就可以很方便地找出頻率最高的元素,省去了計數和排序的麻煩。
關於 Counter 就介紹到這裡。好記性不如爛筆頭,趕緊拿每期 每週一坑 裡的題目來練練手吧。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29096438/viewspace-2146149/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Python計數:defaultdict和CounterPython
- Python程式設計:Counter計數器-dict字典的子類Python程式設計
- 如何使用python計數模組counter?Python
- Jmeter系列(34)- 詳解 Counter 計數器JMeter
- Jmeter——迴圈控制器中實現Counter計數器的次數重置JMeter
- python - Counter簡單使用Python
- Python中Collections.counter用法Python
- python—collections模組(defaultdict、Counter、OrderedDict)Python
- Python中的collections.Counter模組Python
- python中collections.Counter是什麼?Python
- Decade counter
- Counter 1000
- Decade counter againAI
- Slow decade counter
- Counter with period 1000
- B - Ticket Counter
- Python enumerate():使用計數器簡化迴圈Python
- CSS裡的CounterCSS
- CSS3 counter()CSSS3
- Counter 1-12
- 計數器
- Four-bit binary counter
- sql_slave_skip_counterSQL
- [LeetCode] 362. Design Hit CounterLeetCode
- CSS3 counter-resetCSSS3
- python計算對數值Python
- 1(4)計數器
- 使用 CSS 計數器CSS
- python簡易計算器Python
- 4-bit shift register and down counter
- python-----------------numpy計數模組Python
- CSS 計數器簡介CSS
- (八)定時計數器
- python函數語言程式設計3(裝飾器的深入理解)Python函數程式設計
- mapreduce的程式設計模型,計數器程式設計模型
- 精心設計的 GNN 只是“計數器”?GNN
- Python中如何進行字串計數?Python字串
- python函數語言程式設計Python函數程式設計
- python如何計算數的階乘Python