简介
Counter类:为hashable对象(set, dict)计数,是字典的子类.
作用
Counter类的目的是用来跟踪值出现的次数。它是一个无序的容器类型,以字典的键值对形式存储,其中元素作为key,其计数作为value。计数值可以是任意的Interger(包括0和负数)。
查看Counter的父类
>>> Counter.__bases__
(<class 'dict'>,) #dict的子类,继承dict的操作
创建
from collections import Counter
>>> c1 = Counter() #空类
Counter()
>>> c2 = Counter('abcd') # 从一个可iterable对象(list、tuple、dict、字符串等)创建
Counter({'a': 1, 'b': 1, 'c': 1, 'd': 1})
>>> c3 = Counter({'a': 4, 'b': 2}) # 从一个字典对象创建
Counter({'a': 4, 'b': 2})
>>> c4 = Counter(a=4, b=2) # 从一组键值对创建
Counter({'a': 4, 'b': 2})
访问
当所访问的键不存在时,返回0,而不是KeyError;否则返回它的计数。
>>> c = Counter("abcdefgab")
Counter({'a': 2, 'b': 2, 'c': 1, 'd': 1, 'e': 1, 'f': 1, 'g': 1})
>>> c['b']
2
>>> c['x']
0