Python collections模块使用方法详解


Posted in Python onAugust 28, 2019

一、collections模块

1.函数namedtuple

(1)作用:tuple类型,是一个可命名的tuple

(2)格式:collections(列表名称,列表)

(3)​返回值:一个含有列表的类

(4)例子​:

import collections
# help(collections.namedtuple)
Point = collections.namedtuple("Point",['x','y'])
p = Point(15,45)
print(p.x+p.y)
print(p[0]+p[1])
#支持索引等
#应用举例
Circle = collections.namedtuple('Circle',['x','y','r'])
circle = Circle(14,15,45)
propotion = circle[2]*circle[2]*3.141596
print("圆的面积为",propotion)

Python collections模块使用方法详解

2.函数deque

(1)作用:比较方便的解决了频繁删除插入带来的效率问题

(2)​格式:deque(列表)

(3)返回值:列表

(4)例子:

q = collections.deque(['a','b','c'])
print(q)
q.append('sada')
q.appendleft('left')
print(q)
help(collections.deque)

Python collections模块使用方法详解

3.函数:defaultdict

(1)作用:当读取dict不存在的属性时,会返回默认值

(2)格式:collections.defaultdict(函数)

(3)​返回值:返回括号里的函数

(4)例子​:

我们定义一个字典,但是当我们打印一个不存在的索引的时候,会报错,因此我们在定义一个函数,当索引不存在的时候让他返回这个函数。

这个类似于我们使用​:

try...except...这个关键字的用法

d1 = {"one":1,"two":2,"three":3}
print("four")
#上面的会报错,下面的就会返回函数,告诉我们错了
func = lambda:"错了"
d2 = collections.defaultdict(func)
d2['one']=1
d2['two']=2
print(d2['four'])

Python collections模块使用方法详解

4.函数Couter

(1)作用:统计字符串的个数

(2)格式:collections.Counter()

(3)返回值:可迭代内容的字典的Counter类

(4)例子:

list1 = collections.Counter("aaabbbccc")
print(list1)
list2 = collections.Counter(['abc','sad','sad','abc','abc','ffds'])
print(list2)

Python collections模块使用方法详解

(5)总结​:括号内的内容必须是可迭代的才可以进行统计,这里这两个例子不一样,第一个统计的时字符串的字母个数,第二个统计的列表中的元素重复个数,符合我们对可迭代的​理解。

二、源码

d21_1_collections_module

地址:https://github.com/ruigege66/Python_learning/blob/master/d21_1_collections_module

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python用来获得图片exif信息的库实例分析
Mar 16 Python
在Python中处理字符串之isdigit()方法的使用
May 18 Python
numpy.delete删除一列或多列的方法
Apr 03 Python
Python代码缩进和测试模块示例详解
May 07 Python
python f-string式格式化听语音流程讲解
Jun 18 Python
PyCharm安装Markdown插件的两种方法
Jun 24 Python
python 梯度法求解函数极值的实例
Jul 10 Python
PyQt5基本控件使用之消息弹出、用户输入、文件对话框的使用方法
Aug 06 Python
Django发送邮件功能实例详解
Sep 02 Python
Python编程快速上手——Excel到CSV的转换程序案例分析
Feb 28 Python
Python之关于类变量的两种赋值区别详解
Mar 12 Python
五分钟学会怎么用python做一个简单的贪吃蛇
Jan 12 Python
对python中的*args与**kwgs的含义与作用详解
Aug 28 #Python
关于python导入模块import与常见的模块详解
Aug 28 #Python
Python datetime包函数简单介绍
Aug 28 #Python
解决python有时候import不了当前的包问题
Aug 28 #Python
Python 多线程其他属性以及继承Thread类详解
Aug 28 #Python
Python 动态导入对象,importlib.import_module()的使用方法
Aug 28 #Python
Python 共享变量加锁、释放详解
Aug 28 #Python
You might like
Windows下PHP的任意文件执行漏洞
2006/10/09 PHP
用PHP制作静态网站的模板框架(三)
2006/10/09 PHP
一个基于PDO的数据库操作类(新) 一个PDO事务实例
2011/07/03 PHP
PHP 文件编程综合案例-文件上传的实现
2013/07/03 PHP
PHP中mysqli_affected_rows作用行数返回值分析
2014/12/26 PHP
php实现在线通讯录功能(附源码)
2016/05/13 PHP
Js 回车换行处理的办法及replace方法应用
2013/01/24 Javascript
Jquery实现点击切换图片并隐藏显示内容(2种方法实现)
2013/04/11 Javascript
JS脚本defer的作用示例介绍
2014/01/02 Javascript
jquery弹窗插件colorbox绑定动态生成元素的方法
2014/06/20 Javascript
node.js中的fs.read方法使用说明
2014/12/17 Javascript
原生js结合html5制作小飞龙的简易跳球
2015/03/30 Javascript
jQuery-1.9.1源码分析系列(十一)DOM操作续之克隆节点
2015/12/01 Javascript
简单的分页代码js实现
2016/05/17 Javascript
String字符串截取的四种方式总结
2016/11/28 Javascript
jQuery日程管理控件glDatePicker用法详解
2017/03/29 jQuery
AngularJS的脏检查深入分析
2017/04/22 Javascript
使用JS在浏览器中判断当前网络连接状态的几种方法
2017/05/05 Javascript
微信小程序开发之animation循环动画实现的让云朵飘效果
2017/07/14 Javascript
利用node.js如何创建子进程详解
2017/12/09 Javascript
vue中element-ui表格缩略图悬浮放大功能的实例代码
2018/06/26 Javascript
如何在项目中使用log4.js的方法步骤
2019/07/16 Javascript
javascript导出csv文件(excel)的方法示例
2019/08/25 Javascript
使用Karma做vue组件单元测试的实现
2020/01/16 Javascript
JavaScript适配器模式原理与用法实例详解
2020/03/09 Javascript
vue使用canvas实现移动端手写签名
2020/09/22 Javascript
[05:14]辉夜杯主赛事第二日 RECAP精彩回顾
2015/12/27 DOTA
python字典操作实例详解
2017/11/16 Python
对Python中创建进程的两种方式以及进程池详解
2019/01/14 Python
Python Numpy,mask图像的生成详解
2020/02/19 Python
如何利用python 读取配置文件
2021/01/06 Python
会计电算化毕业生自荐信
2014/03/03 职场文书
旅行社优秀创业计划书
2014/08/16 职场文书
初中学生操行评语
2014/12/26 职场文书
中小学生安全教育观后感
2015/06/17 职场文书
mysql知识点整理
2021/04/05 MySQL