1.Counter

  • Counter是字典对象的一个子类。Counter()函数是collections模块中的函数,它接收一个可迭代对象,例如list、tuple等,返回一个Counter字典。返回Counter字典的键是Counter()函数接收的可迭代对象中唯一的元素,Counter字典的值是Counter()函数接收的可迭代对象中唯一的元素的出现次数。

    from collections import Counter
    lis = [1, 2, 1, 3, 3, 2, 1, 2, 3, 2, 1, 3, 2, 2, 1]
    c = Counter(lis)  # 创建Counter类的一个对象c
    print(c)
    # result:
    Counter({2: 6, 1: 5, 3: 4})
    # 返回某个元素
    print(c[1])
    # 遍历整个对象c
    for k, v in c.items():print(k, '---->', v)
    

most_common()函数的使用

  • Counter类的一个对象c中常用的函数是most_common(),当对象c调用most_common()函数时,返回的是包含N个由最常见元素和元素出现次数组成的元组作为基本列表元素构成的列表,其中N是自己指定的参数。

    from collections import Counterlis = [1, 2, 1, 3, 3, 2, 1, 2, 3, 2, 1, 3, 2, 2, 1]
    c = Counter(lis)
    c.most_common(2)
    # result:
    [(2, 6), (1, 5)]
    

2.defaultdict

  • defalutdict类似于Python中内建的字典,当使用defaultdict时,访问字典中不存在的键时,不会抛出异常。
  • defaultdict使用一个默认的值来初始化字典的键。字典值的设置需要根据创建defaultdict对象时来指定设置值的数据类型,具体代码如下:
    from collections import defaultdictnames_dict = defaultdict(int)
    names_dict['curry'] = 1
    names_dict['harden'] = 2
    names_dict['durant'] = 3
    sara_number = names_dict['Sara']
    print(sara_number)
    # result
    0
    

3.deque

  • deque的最大容量是10,只能容纳10个元素

    from collections import dequemy_deque = deque(maxlen=10)
    for i in range(10):my_deque.append(i+1)
    print(my_deque)
    # result:
    deque([1, 2, 3, 4, 5, 6, 7, 8, 9, 10], maxlen=10)
    
  • 在my_deque后再增加5个元素,就会将队列的队头前面开始的5个元素删除,再从队尾添加5个元素。

    for i in range(10,15):my_deque.append(i+1)
    print(my_deque)
    # result
    deque([6, 7, 8, 9, 10, 11, 12, 13, 14, 15], maxlen=10)
    

4.namedtuple

  • 创建一个名字固定的元组,nametuple()函数接收两个参数,第一个参数接收名字固定的元组的name,第二个参数是元组的属性

    from collections import namedtuplePerson = namedtuple('Person', 'name, age, job')
    Mike = Person(name='Mike', age=30, job='Data Science')
    Kate = Person(name='Kate', age=32, job='Project Manager')
    print(Mike)
    print(Kate)
    

Python中内建模块collections常见用法总结相关推荐

  1. Python的内建模块itertools

    Python的内建模块itertools提供了非常有用的用于操作迭代对象的函数. 首先,我们看看itertools提供的几个"无限"迭代器: import itertools na ...

  2. Python常用内建模块(内含实例)

    文章目录 datetime 获取当前日期和时间 获取指定日期和时间 datetime转化为timestamp timestamp转化为datetime str转化为datetime datetime转 ...

  3. Python常用内建模块——学习笔记

    1.datetime:Python处理日期和时间的标准库 引入方法: from datetime import datetime. 第一个datetime是模块,第二个datetime是类. 如果仅导 ...

  4. python的标准类型内建模块有_python的常用内建模块与常用第三方模块

    本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理 一.常用内置模块 1.datetime Python 提供了一个 time 和 calendar 模 ...

  5. python自带intertool模块找不到_介绍Python中内置的itertools模块

    Python的内建模块itertools提供了非常有用的用于操作迭代对象的函数. 首先,我们看看itertools提供的几个"无限"迭代器: >>> import ...

  6. python标准类型内建模块_Python内建模块struct实例详解

    本文研究的主要是Python内建模块struct的相关内容,具体如下. Python中变量的类型只有列表.元祖.字典.集合等高级抽象类型,并没有像c中定义了位.字节.整型等底层初级类型.因为Pytho ...

  7. Python学习笔记:常用内建模块4:hmac

    前言 最近在学习深度学习,已经跑出了几个模型,但Pyhton的基础不够扎实,因此,开始补习Python了,大家都推荐廖雪峰的课程,因此,开始了学习,但光学有没有用,还要和大家讨论一下,因此,写下这些帖 ...

  8. Python3 内建模块 hashlib、itertools、HTMLParser、urllib

    Python的hashlib提供了常见的摘要算法,如MD5,SHA1等等. 什么是摘要算法呢?摘要算法又称哈希算法.散列算法.它通过一个函数,把任意长度的数据转换为一个长度固定的数据串(通常用16进制 ...

  9. 四十六 常用内建模块 itertools

    Python的内建模块itertools提供了非常有用的用于操作迭代对象的函数. 首先,我们看看itertools提供的几个"无限"迭代器: >>> import ...

最新文章

  1. 每天一个linux命令(12):more命令
  2. 微信支付开发(2) 微信支付账号体系
  3. 学生签到系统c代码_C语言实现简单学生学籍管理系统
  4. 趣挨踢 | 跳槽季,让我们一起攻克算法吧!
  5. java配置springmvc_告别XML 使用JAVA配置SpringMVC
  6. 偶遇的webshell,那得冲一波
  7. epson机器人编程 范例_Epson机械手简单实例编程
  8. word 文档多级列表编号设置
  9. python爬虫-国家企业_国家企业信用公示系统的爬取
  10. 在浏览器输入URL,按下回车之后的流程?
  11. SMS短信解码举例(一)
  12. 先码后看!五大学科竞赛哪个含金量最高?
  13. 深度学习,如何选择GPU服务器?
  14. openlayers结合谷歌api进行地图定位
  15. 【缺陷管理】9:偶尔出现的缺陷如何处理?
  16. c#中文字符串与byte数组互相转化
  17. 内存不能为read/written 问题的简单解决办法
  18. 融资担保系统-助力企业的可持续发展
  19. Jupyter 快捷键 (2)
  20. 笔记本cpu排行榜天梯图2021最新版

热门文章

  1. Apache httpd 以root身份运行
  2. 使用XML作为配置表,WinForm程序读取配置表来动态显示控件
  3. 【独立开发人员er Cocos2d-x实战 009】Cocos2dx 菜单项CCMenu使用
  4. linux grep命令总结
  5. 服务器测速,php在线测速
  6. 大数据时代的数据管理
  7. Acronis Disk Director 10 硬盘操作详细教程(三)分区表修复
  8. 布兰森:激励是最好的加速器
  9. 京东裁员杀红眼了!说要给n+1,员工签字后,公司又反悔了!
  10. 又一个放弃P10千万年薪出走阿里的CTO!