python collections模块 计数器(counter)
一、计数器(counter)
Counter是对字典类型的补充,用于追踪值的出现次数。
ps:具备字典的所有功能 + 自己的功能
- 把我写入的元素出现的多少次都计算出来
- import collections
- # 创建一个Counter对象
- obj = collections.Counter('ddccbbqqaaa')
- print(obj)
- '''
- 把我写入的元素出现的多少次都计算出来
- Counter({'a': 3, 'd': 2, 'c': 2, 'b': 2, 'q': 2})
- '''
- obj.most_common()
要取多少得值
- import collections
- # 创建一个Counter对象
- obj = collections.Counter('ddccbbqqaaa')
- print(obj)
- '''
- 把我写入的元素出现的多少次都计算出来
- Counter({'a': 3, 'd': 2, 'c': 2, 'b': 2, 'q': 2})
- '''
- ret = obj.most_common(4)
- print(ret)
- # 取前4位
- # [('a', 3), ('d', 2), ('c', 2), ('b', 2)]
循环字典
- import collections
- # 创建一个Counter对象
- obj = collections.Counter('ddccbbqqaaa')
- print(obj)
- # Counter({'a': 3, 'd': 2, 'c': 2, 'b': 2, 'q': 2})
- # 循环 字典
- for i in obj:
- print(i,obj[i])
- '''
- d 2
- c 2
- b 2
- q 2
- a 3
- '''
- elements() 传的是原生的值
- import collections
- # 创建一个Counter对象
- obj = collections.Counter("dd")
- # elements() 传的是原生的值
- print(list(obj.elements()))
- # ['d', 'd']
- obj = collections.Counter(['','','',''])
- print(list(obj.elements()))
- # ['1', '2', '3', '4']
- update() 更新计数器 增加
在原来基础上添加
- import collections
- # 创建一个Counter对象
- obj = collections.Counter(['','','',''])
- print(obj)
- # Counter({'22': 2, '11': 1, '44': 1})
- # update() 更新计数器
- obj.update(["","","eric"])
- print(obj)
- # Counter({'11': 3, '22': 2, '44': 1, 'eric': 1})
- subtract()
删除
- 原来的计数器中的每一个元素的数量减去后添加的元素的数量
- import collections
- # 创建一个Counter对象
- obj = collections.Counter(['','','',''])
- print(obj)
- # Counter({'22': 2, '11': 1, '44': 1})
- # update() 更新计数器
- obj.update(["","","eric"])
- print(obj)
- # Counter({'11': 3, '22': 2, '44': 1, 'eric': 1})
- obj.subtract(['eric'])
- print(obj)
- # Counter({'11': 3, '22': 2, '44': 1, 'eric': 0})
- import collections
- # 创建一个Counter对象
- obj = collections.Counter(['','','',''])
- print(obj)
- # Counter({'22': 2, '11': 1, '44': 1})
- obj.subtract(['eric','','',''])
- print(obj)
- # Counter({'11': 1, '44': 1, '22': -1, 'eric': -1})
python collections模块 计数器(counter)的更多相关文章
- Python标准库——collections模块的Counter类
1.collections模块 collections模块自Python 2.4版本开始被引入,包含了dict.set.list.tuple以外的一些特殊的容器类型,分别是: OrderedDict类 ...
- Python collections模块总结
Python collections模块总结 除了我们使用的那些基础的数据结构,还有包括其它的一些模块提供的数据结构,有时甚至比基础的数据结构还要好用. collections ChainMap 这是 ...
- (转)python collections模块详解
python collections模块详解 原文:http://www.cnblogs.com/dahu-daqing/p/7040490.html 1.模块简介 collections包含了一些特 ...
- Python中Collections模块的Counter容器类使用教程
1.collections模块 collections模块自Python 2.4版本开始被引入,包含了dict.set.list.tuple以外的一些特殊的容器类型,分别是: OrderedDict类 ...
- Python collections 模块用法举例
Python作为一个“内置电池”的编程语言,标准库里面拥有非常多好用的模块.比如今天想给大家 介绍的 collections 就是一个非常好的例子. 1.collections模块基本介绍 我们都知道 ...
- python collections模块
collections模块基本介绍 collections在通用的容器dict,list,set和tuple之上提供了几个可选的数据类型 namedtuple() factory function f ...
- Python——collections模块
collections模块 collections模块在内置数据类型(dict.list.set.tuple)的基础上,还提供了几个额外的数据类型:ChainMap.Counter.deque.def ...
- Python——collections模块、time模块、random模块、os模块、sys模块
1. collections模块 (1)namedtuple # (1)点的坐标 from collections import namedtuple Point = namedtuple('poin ...
- python collections模块详解
参考老顽童博客,他写的很详细,例子也很容易操作和理解. 1.模块简介 collections包含了一些特殊的容器,针对Python内置的容器,例如list.dict.set和tuple,提供了另一种选 ...
随机推荐
- STM32CubeMX软件工程描述_USART配置过程
推荐 分享一个朋友的人工智能教程,零基础!通俗易懂!希望你也加入到人工智能的队伍中来! http://www.captainbed.net/strongerhuang Ⅰ.写在前面 学习本文之前可以查 ...
- Java中的阻塞队列(BlockingQueue)
1. 什么是阻塞队列 阻塞队列(BlockingQueue)是 Java 5 并发新特性中的内容,阻塞队列的接口是 java.util.concurrent.BlockingQueue,它提供了两个附 ...
- C++和Java函数传递数组参数比较
如果我想实现函数参数传递数组的业务需求,在Java中很容易实现,如下所示.因为Java有.length方法,可以获取数组的长度. public class Test { public static v ...
- 考试星陈沧:借助Testin云測加速实现”考试电子化”目标
考试星陈沧:借助Testin云測加速实现"考试电子化"目标 2014/10/11 · Testin · 开发人员訪谈 考试星国内首款在线考试云平台,可用于企业内部考核,经销商考核, ...
- 第二百七十二节,Tornado框架-iframe标签框架伪造ajax
Tornado框架-iframe标签框架伪造ajax html <!DOCTYPE html> <html> <head lang="en"> ...
- jQuery补充,模拟图片放大镜
jQuery补充,模拟图片放大镜 html <!DOCTYPE html> <html lang="en"> <head> <meta c ...
- OGNL支持各种纷繁复杂的表达式
OGNL支持各种纷繁复杂的表达式.但是最最基本的表达式的原型,是将对象的引用值用点串联起来,从左到右,每一次表达式计算返回的结果成为当前对象,后面部分接着在当前对象上进行计算,一直到全部表达式计算完成 ...
- json转datatable(正则表达式的方法)
/// <summary> /// 将json转换为DataTable /// </summary> /// <param name="strJson" ...
- ThinkPHP中的验证码不出现的解决办法
出现这种问题的原因可能是因为代码写的不规范,出现了其他的输出:解决办法: 原代码: public function captchaAction() { $verify = ...
- ztree获取选中节点时不能进入可视区域出现BUG如何解决
zTree 是一个依靠 jQuery 实现的多功能 “树插件”.优异的性能.灵活的配置.多种功能的组合是 zTree 最大优点. zTree 的特点编辑 ● zTree v3.0 将核心代码按照功能进 ...