python collections模塊 計數器(counter)
阿新 • • 發佈:2018-10-19
寫入 print int com size 自己的 for 一個 ont
一、計數器(counter)
Counter是對字典類型的補充,用於追蹤值的出現次數。
ps:具備字典的所有功能 + 自己的功能
把我寫入的元素出現的多少次都計算出來
import collections # 創建一個Counter對象 obj = collections.Counter(‘ddccbbqqaaa‘) print(obj) ‘‘‘ 把我寫入的元素出現的多少次都計算出來 Counter({‘a‘: 3, ‘d‘: 2, ‘c‘: 2, ‘b‘: 2, ‘q‘: 2}) ‘‘‘
obj.most_common()
要取多少得值
import collections# 創建一個Counter對象 obj = collections.Counter(‘ddccbbqqaaa‘) print(obj) ‘‘‘ 把我寫入的元素出現的多少次都計算出來 Counter({‘a‘: 3, ‘d‘: 2, ‘c‘: 2, ‘b‘: 2, ‘q‘: 2}) ‘‘‘ ret = obj.most_common(4) print(ret) # 取前4位 # [(‘a‘, 3), (‘d‘, 2), (‘c‘, 2), (‘b‘, 2)]
循環字典
import collections # 創建一個Counter對象 obj = collections.Counter(‘ddccbbqqaaa‘) print(obj) # Counter({‘a‘: 3, ‘d‘: 2, ‘c‘: 2, ‘b‘: 2, ‘q‘: 2}) # 循環 字典 for i in obj: print(i,obj[i]) ‘‘‘ d 2 c 2 b 2 q 2 a 3 ‘‘‘
elements() 傳的是原生的值
import collections # 創建一個Counter對象 obj = collections.Counter("dd") # elements() 傳的是原生的值 print(list(obj.elements())) # [‘d‘, ‘d‘]obj = collections.Counter([‘1‘,‘2‘,‘3‘,‘4‘]) print(list(obj.elements())) # [‘1‘, ‘2‘, ‘3‘, ‘4‘]
update() 更新計數器 增加
在原來基礎上添加
import collections # 創建一個Counter對象 obj = collections.Counter([‘11‘,‘22‘,‘22‘,‘44‘]) print(obj) # Counter({‘22‘: 2, ‘11‘: 1, ‘44‘: 1}) # update() 更新計數器 obj.update(["11","11","eric"]) print(obj) # Counter({‘11‘: 3, ‘22‘: 2, ‘44‘: 1, ‘eric‘: 1})
subtract()
刪除
原來的計數器中的每一個元素的數量減去後添加的元素的數量
import collections # 創建一個Counter對象 obj = collections.Counter([‘11‘,‘22‘,‘22‘,‘44‘]) print(obj) # Counter({‘22‘: 2, ‘11‘: 1, ‘44‘: 1}) # update() 更新計數器 obj.update(["11","11","eric"]) print(obj) # Counter({‘11‘: 3, ‘22‘: 2, ‘44‘: 1, ‘eric‘: 1}) obj.subtract([‘eric‘]) print(obj) # Counter({‘11‘: 3, ‘22‘: 2, ‘44‘: 1, ‘eric‘: 0})
import collections # 創建一個Counter對象 obj = collections.Counter([‘11‘,‘22‘,‘22‘,‘44‘]) print(obj) # Counter({‘22‘: 2, ‘11‘: 1, ‘44‘: 1}) obj.subtract([‘eric‘,‘22‘,‘22‘,‘22‘]) print(obj) # Counter({‘11‘: 1, ‘44‘: 1, ‘22‘: -1, ‘eric‘: -1})
python collections模塊 計數器(counter)