python3 Counter类(计数器)

时间:2024-07-15 08:07:07

Counter(计数器):用于追踪值的出现次数

Counter类继承dict类,所以它能使用dict类里面的方法


创建一个Counter类

import collections
obj = collections.Counter('aabbccc')
print(obj) #输出:Counter({'c': 3, 'a': 2, 'b': 2})

elements()

import collections
obj = collections.Counter('aabbccc')
print(sorted(obj.elements())) #输出:['a', 'a', 'b', 'b', 'c', 'c', 'c'] for k in obj.elements(): #遍历打印obj所有元素
print(k)

most_common(指定一个参数n,列出前n个元素,不指定参数,则列出所有)

import collections
obj = collections.Counter('aabbbcccc')
print(obj.most_common(2)) #输出:[('c', 4), ('b', 3)]

items(从dict类中继承的方法)

import collections
obj = collections.Counter('aabbbcccc')
print(obj.items()) for k,v in obj.items():
print(k,v) #输出:dict_items([('b', 3), ('c', 4), ('a', 2)])
# b 3
# c 4
# a 2

update(增加元素)

import collections
obj = collections.Counter(['',''])
obj.update(['',''])
print(obj) #输出:Counter({'22': 2, '11': 1, '55': 1})

subtract(原来的元素减去新传入的元素)

import collections
obj = collections.Counter(['','',''])
obj.subtract(['',''])
print(obj) #输出:Counter({'11': 1, '33': 1, '22': 0, '55': -1})

未完待续。。。