collections系列之Counter
collections模块中有一个叫做Counter的类,该类的作用就是计数器,Counter是对dict的加工,所有Counter继承了dict的方法
1、创建一个Counter,需要import collections库,通过collections库创建Counter,主要的功能就是统计每个元素出现的次数
import collections
obj = collections.Counter("adalfjklajflkajfklejlasdkfjaklfjlkasfja")
print(obj)
# Counter({'a': 8, 'l': 7, 'j': 7, 'f': 6, 'k': 6, 'd': 2, 's': 2, 'e': 1})
l1 = ["ada","ada","cc"]
obj = collections.Counter(l1)
print(obj)
# Counter({'ada': 2, 'cc': 1})
2、Counter的另外一个方法就是most_common,可以指定统计出出现次数排名前X的元素,出现的次数从大到小排列,比如下面的例子,只统计出现次数最多的前3个元素
obj = collections.Counter("adalfjklajflkajfklejlasdkfjaklfjlkasfja")
print(obj)
ret = obj.most_common(3)
print(ret)
# [('a', 8), ('l', 7), ('j', 7)]
3、elements方法,可以列出Counter对象中的每一个元素
l1 = ["ada","ada","cc"]
obj = collections.Counter(l1)
print(obj)
for i in obj.elements():
print(i) # ada
# ada
# cc
4、update方法,可以增加Counter对象中的内容
l1 = ["ada","ada","cc"]
obj = collections.Counter(l1)
print(obj)
# Counter({'ada': 2, 'cc': 1})
l2 =["cc","add","ada",1]
obj.update(l2)
print(obj)
# Counter({'ada': 3, 'cc': 2, 'add': 1, 1: 1})
5、subtract方法,可以减少Counter对象中的内容,可以看到如果减少的元素在Counter中没有,则该元素的值为-1
l1 = ["ada","ada","cc"]
l2 =["cc","add","ada",1]
obj = collections.Counter(l1)
print(obj)
# Counter({'ada': 2, 'cc': 1})
obj.subtract(l2)
print(obj)
# Counter({'ada': 1, 'cc': 0, 'add': -1, 1: -1})
collections系列之Counter的更多相关文章
- Python 第三篇(下):collections系列、集合(set)、单双队列、深浅copy、内置函数
一.collections系列: collections其实是python的标准库,也就是python的一个内置模块,因此使用之前导入一下collections模块即可,collections在py ...
- python递归、collections系列以及文件操作进阶
global log 127.0.0.1 local2 daemon maxconn log 127.0.0.1 local2 info defaults log global mode http t ...
- Python之set集合与collections系列
1>set集合:是一个无序且不重复的元素集合:访问速度快,解决了重复的问题: s2 = set(["che","liu","haha" ...
- python之路(二)-collections系列
collections提供了一些比较方便的方法,使用时需要先导入模块 导入模块: import collections 1. 计数器Counter 统计参数中出现的次数,以字典的方式返回结果,参数可以 ...
- python3 开发面试题(collections中的Counter)6.7
''' 编写Python脚本,分析xx.log文件,按域名统计访问次数 xx.log文件内容如下: https://www.sogo.com/ale.html https://www.qq.com/3 ...
- collections系列之OrderedDict【有序字典】与DefaultDict【默认字典】
今天来向大家介绍一下collections系列中的OrderedDict和DefaultDict,这两种类均是通过collections来创建的,均是对dict字典加工,所有都继承了dict字典的方法 ...
- Python标准库——collections模块的Counter类
1.collections模块 collections模块自Python 2.4版本开始被引入,包含了dict.set.list.tuple以外的一些特殊的容器类型,分别是: OrderedDict类 ...
- Python中模块之collections系列
collection系列功能介绍 1. 常用的集中类 1. Counter(计数器) 计数器的常用方法如下: 创建一个字典计数器 格式:collections.Counter(obj) 例如:prin ...
- collections系列
一.计数器(counter) Counter是对字典类型的补充,用于追踪值的出现次数. ps:具备字典的所有功能 + 自己的功能 c = Counter('abcdeabcdabcaba') prin ...
随机推荐
- 利用.pbk来实现ADSL开机自动拨号
当你新建拨号连接或者VPN连接之后在你的电脑里会创建一个.pbk的文件 这个.pbk的文件可以说是一个集合,将你电脑的所有连接都保存在一起. 同时你还可以将此连接复制起来传给其他人. 系统默认的.pb ...
- javascript创建对象之工厂模式(一)
工厂模式在软件工程里面是一种比较常见的设计模式了.这种模式抽象了创建具体对象的过程. 上代码: function createHuman(name,sex) { var obj = new Objec ...
- 从线性回归到CNN【转】
原地址:http://zhangliliang.com/2014/06/14/from-lr-to-cnn/ csdn: http://blog.csdn.net/t0903/article/d ...
- HP-UX oracle RAC 双机实践 (转载)
一.软硬件配置检查 1.检查内存#/usr/contrib/bin/machinfoCPU info: 4 Intel(R) Itanium 2 9100 series processors (1. ...
- Python - Django - ORM 实例(二)
在 app01/models.py 中添加 Book 类对象表 from django.db import models # Create your models here. # 出版社 class ...
- 超文本标记语言HTML
介绍html文档的基本结构,html常用标签的使用,理解html语言制作网页基本原理. html概述和基本结构 html概述 HTML是 HyperText Mark-up Language 的首字母 ...
- Zookeeper 介绍翻译
源网址链接 https://zookeeper.apache.org/ Apache Zookeeper 开放源码的服务器,提供高可靠的分布式协调服务. Zookeeper是一个维护配置信息,命名服务 ...
- Nginx-ingress-controller部署
参考官网https://kubernetes.github.io/ingress-nginx/ 部署pod:nginx-ingress-controller/nginx-default-backend ...
- python-log-env
logging.basicConfig(format="[%(asctime)s] %(filename)s[line:%(lineno)d] %(levelname)s: %(messag ...
- python进度条
#!/usr/bin/env python# -*- coding:utf-8 -*- import urllib url = "http://www.163.com/" #htm ...