在平常刷题的过程中,经常会遇到需要对字符串的字母或者是列表中的数字进行计数,对于Java语言来说可以使用map对其进行计数,在python中可以使用Collections.Counter方法进行计数,最常见的是可以对列表中的元素进行计数,并且计数之后是以字典的形式返回结果的,这样的话对于后面的操作就很方便了,官方提供的api解释如下:
https://docs.python.org/zh-cn/3.8/library/collections.html#collections.Counter
Counter方法可以接收列表、元祖、字符串为参数对参数中的元素进行计数,比较常见的是对列表中的元素进行计数,计数完了之后可以访问键可以得到具体的值
import collections
if __name__ == '__main__':
dic = ["a", "a", "b", "c", "b", "c", "d", "b"]
# 对元素进行计数
dic = collections.Counter(dic)
print(dic)
# dic中最常见的n个元素
print(dic.most_common(3))
dic = collections.Counter(cats=4, dogs=8)
print(dic)