一、计数器(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)的更多相关文章

  1. Python标准库——collections模块的Counter类

    1.collections模块 collections模块自Python 2.4版本开始被引入,包含了dict.set.list.tuple以外的一些特殊的容器类型,分别是: OrderedDict类 ...

  2. Python collections模块总结

    Python collections模块总结 除了我们使用的那些基础的数据结构,还有包括其它的一些模块提供的数据结构,有时甚至比基础的数据结构还要好用. collections ChainMap 这是 ...

  3. (转)python collections模块详解

    python collections模块详解 原文:http://www.cnblogs.com/dahu-daqing/p/7040490.html 1.模块简介 collections包含了一些特 ...

  4. Python中Collections模块的Counter容器类使用教程

    1.collections模块 collections模块自Python 2.4版本开始被引入,包含了dict.set.list.tuple以外的一些特殊的容器类型,分别是: OrderedDict类 ...

  5. Python collections 模块用法举例

    Python作为一个“内置电池”的编程语言,标准库里面拥有非常多好用的模块.比如今天想给大家 介绍的 collections 就是一个非常好的例子. 1.collections模块基本介绍 我们都知道 ...

  6. python collections模块

    collections模块基本介绍 collections在通用的容器dict,list,set和tuple之上提供了几个可选的数据类型 namedtuple() factory function f ...

  7. Python——collections模块

    collections模块 collections模块在内置数据类型(dict.list.set.tuple)的基础上,还提供了几个额外的数据类型:ChainMap.Counter.deque.def ...

  8. Python——collections模块、time模块、random模块、os模块、sys模块

    1. collections模块 (1)namedtuple # (1)点的坐标 from collections import namedtuple Point = namedtuple('poin ...

  9. python collections模块详解

    参考老顽童博客,他写的很详细,例子也很容易操作和理解. 1.模块简介 collections包含了一些特殊的容器,针对Python内置的容器,例如list.dict.set和tuple,提供了另一种选 ...

随机推荐

  1. netlink--内核态与用户态通信

    1. 什么是 Netlink 什么是Netlink?Netlink是linux提供的用于内核和用户态进程之间的通信方式.但是注意虽然Netlink主要用于用户空间和内核空间的通信,但是也能用于用户空间 ...

  2. Memcached 1.4.20 发布,集中式缓存系统

    内存缓存Memcached 1.4.20发布.2014-05-12 上一个版本是2014-05-01的1.4.19  此版本只修正了一个1.4.18和1.4.19中引入的Bug. 此版本只是修复了导致 ...

  3. Toad 补充与培训 & 常用菜单

    Toad 常用菜单 新版本 toad 软件中, 比较有用的菜单 (toad10.6 版本) 下边菜单, 在日常工作中出现过的, 显示为 粉色 , 蓝色 表示次一级的重要 session 菜单 new ...

  4. 如何从CentOS官网下载我们想要的版本

    今天想从官网下载6.5版本的CentOS,结果找了好一会儿才找到,赶紧记录下来,以备以后查询. 第一步在百度搜索centos,点击"Download CentOS",如下图所示. ...

  5. easyui添加删除tooltip

    /** * 扩展两个方法 */$.extend($.fn.datagrid.methods, { /** * 开打提示功能 * @param {} jq * @param {} params 提示消息 ...

  6. 解决Maven项目 Missing artifact jdk.tools:jdk.tools:1.7的错误

    因学习项目需要,在pom.xml添加hbase-client依赖的时候提示解决Maven工程中报 Missing artifact jdk.tools:jdk.tools:1.7的提示信息,之前遇到这 ...

  7. Spring Framework 官方文档学习(四)之Validation、Data Binding、Type Conversion

    本篇太乱,请移步: Spring Framework 官方文档学习(四)之Validation.Data Binding.Type Conversion(一) 写了删删了写,反复几次,对自己的描述很不 ...

  8. multimap 小例子

    场景: 按DDX值倒序取前十的板块代码,用 map<float, string, greater<float> > mapBKDDX; 存储时,相同DDX值的板块只能存储第一个 ...

  9. 利用QtGraphicalEffects来使得自己的图像显示更加生动

    有兴趣的开发人员能够參阅连接http://doc.qt.io/qt-5/qtgraphicaleffects-qmlmodule.html来深度学习Qt对Graphics方面的处理. 在今天的这篇文章 ...

  10. Linq系列(5)——表达式树之案例应用

    在进入今天的正题之前,先感慨下本人的blog的人气一篇不如一篇.再加上换公司后人身自由受到了比之前大得多得多的限制,实在令本人有些郁闷.不过每次提笔写些东西跟大家分享,总是能让我感到愉悦和欣慰,希望我 ...