千家信息网

python的Counter怎么用

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,这篇文章主要介绍了python的Counter怎么用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇python的Counter怎么用文章都会有所收获,下面我们一起来看看吧
千家信息网最后更新 2026年11月02日python的Counter怎么用

这篇文章主要介绍了python的Counter怎么用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇python的Counter怎么用文章都会有所收获,下面我们一起来看看吧。

Counter

Counter 也是 dict 的子类,dict 有的特性它都有,正如其名,它的主要作用是用于统计计数。

比如统计一个字符串中每个单词出现的次数,统计一个列表中每个元素出现的次数等等。凡是需要计数的场景都可以用Counter来实现。

例如我要统计字符串"hello world" 中每个单词的出现次数时,用字典来实现可以这样。

>>> c = dict()
>>> for s in "helloworld":
... c[s] = c.setdefault(s, 0) + 1

>>> c
{'h': 1, 'e': 1, 'l': 3, 'o': 2, 'w': 1, 'r': 1, 'd': 1}

如果使用 Counter,就更简单了,直接将字符串作为参数传进去就好。

>>> from collections import Counter
>>> c = Counter("helloworld")
>>> c
Counter({'l': 3, 'o': 2, 'h': 1, 'e': 1, 'w': 1, 'r': 1, 'd': 1})

Counter 还有一个比较实用的方法是 Counter.most_common(n), 它可以返回前n个出现次数最多的元素

>>> c.most_common(1)  # 出现次数最多的前1位
[('l', 3)]
>>> c.most_common(2) # 出现次数最多的前2位
[('l', 3), ('o', 2)]
>>> c.most_common(3) # 出现次数最多的前3位
[('l', 3), ('o', 2), ('h', 1)]
>>>

这个在统计排行时有用,不过在大型应用中,如果数据是保存在数据库的,这种操作其实在数据库来实现就行,没必要用Python来处理。

OrderedDict

OrderedDict 同样是 dict 的子类,它是一个有序的字典,在Python3.6以前,字典元素并不保证有序,所以就有OrderedDict。

>>> from collections import OrderedDict
>>> od = OrderedDict()
>>> od['a'] = 1
>>> od['b'] = 2
>>> od['c'] = 3
>>> od
OrderedDict([('a', 1), ('b', 2), ('c', 3)])

所谓有序不是按照大小来排,而是按照key的加入顺序排列,a 最先加入,所以排在前面。但是,从Python3.7开始,dict 本身也拥有了这种特性,例如:

>>> d = dict()
>>> d['a'] = 1
>>> d['b'] = 2
>>> d['c'] = 3
>>> d
{'a': 1, 'b': 2, 'c': 3}

默认按照插入的顺序排的,所以,从Python3.7开始,OrderedDict的用处就并不大了,因为 dict 已经实现了有序这个特性。

关于"python的Counter怎么用"这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对"python的Counter怎么用"知识都有一定的了解,大家如果还想学习更多知识,欢迎关注行业资讯频道。

次数 统计 有序 元素 字典 字符 字符串 数据 特性 知识 内容 单词 子类 数据库 篇文章 顺序 实用 必要 不大 价值 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网科技公司 上海卓越科技互联网 科技互联网龙头 互联网科技公司的优势 金融科技创新监管互联网金融 互联网科技开发公司 上海挚品互联网科技 浩特互联网科技 互联网高科技企业 互联网科技咨询 无锡溥仪互联网科技有限公司 北京三清互联网科技 互联网科技中介 福州新华互联网科技学校 知乎 互联网和黑科技的看法 武汉健翔互联网络科技有限公司 智帮互联网科技公司最近动向 互联网科技年终奖 风投北京互联网科技 容联科技互联网电商 广东万易互联网科技有限公司惠州分公司 广州大一互联网络科技有限公司 中国互联网科技工作委员会毛军 互联网科技有限公司 翻译 互联网科技寓意 南平创想时代互联网科技有限公司 花神(南京)互联网科技有限公司 洛阳共同富裕互联网科技有限公司 四川互联网展示科技馆设计 杭州科技互联网公司有哪些
0