我是靠谱客的博主 魁梧金鱼,最近开发中收集的这篇文章主要介绍python counter模块_简单掌握Python的Collections模块中counter结构的用法,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

counter 是一种特殊的字典,主要方便用来计数,key 是要计数的 item,value 保存的是个数。

from collections import Counter

>>> c = Counter('hello,world')

Counter({'l': 3, 'o': 2, 'e': 1, 'd': 1, 'h': 1, ',': 1, 'r': 1, 'w': 1})

初始化可以传入三种类型的参数:字典,其他 iterable 的数据类型,还有命名的参数对。

| __init__(self, iterable=None, **kwds)

| Create a new, empty Counter object. And if given, count elements

| from an input iterable. Or, initialize the count from another mapping

| of elements to their counts.

|

| >>> c = Counter() # a new, empty counter

| >>> c = Counter('gallahad') # a new counter from an iterable

| >>> c = Counter({'a': 4, 'b': 2}) # a new counter from a mapping

| >>> c = Counter(a=4, b=2) # a new counter from keyword args

默认请求下,访问不存在的 item,会返回 0。Counter 可以用来统计某些数据的出现次数,比如一个很长的数字串 numbers = "67642192097348921647512014651027586741512651" 中每个数字的频率:

>>> c = Counter(numbers) # c 存储了每个数字的频率

>>> c.most_common() # 所有数字按照频率排序。如果 most_common 接受了 int 参数 n,将返回频率前n 的数据,否则会返回所有的数据

[('1', 8),

('2', 6),

('6', 6),

('5', 5),

('4', 5),

('7', 5),

('0', 3),

('9', 3),

('8', 2),

('3', 1)]

此外,你还可以对两个 Counter 对象进行 +, -,min, max 等操作。

综合示例:

print('Counter类型的应用')

c = Counter("dengjingdong")

#c = Counter({'n': 3, 'g': 3, 'd': 2, 'i': 1, 'o': 1, 'e': 1, 'j': 1})

print("原始数据:",c)

print("最多的两个元素:",c.most_common(2))#输出数量最多的元素

print("d的个数:",c['d'])#输出d的个数

print(c.values())#输出字典的value列表

print(sum(c.values()))#输出总字符数

print(sorted(c.elements()))#将字典中的数据,按字典序排序

print('nn')

"""

#删除所有d元素

del c['d']

b = Counter("dengxiaoxiao")

#通过subtract函数删除元素,元素个数可以变成负数。

c.subtract(b)

"""

"""

可以添加数据

b = Counter("qinghuabeida")

c.update(b)

"""

本文标题: 简单掌握Python的Collections模块中counter结构的用法

本文地址: http://www.cppcns.com/jiaoben/python/155990.html

最后

以上就是魁梧金鱼为你收集整理的python counter模块_简单掌握Python的Collections模块中counter结构的用法的全部内容,希望文章能够帮你解决python counter模块_简单掌握Python的Collections模块中counter结构的用法所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(54)

评论列表共有 0 条评论

立即
投稿
返回
顶部