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实现从字符串中找出字符1的位置以及个数的方法
Aug 25 Python
解析Python中while true的使用
Oct 13 Python
python相似模块用例
Mar 04 Python
简单学习Python time模块
Apr 29 Python
Python只用40行代码编写的计算器实例
May 10 Python
基于并发服务器几种实现方法(总结)
Dec 29 Python
django manage.py扩展自定义命令方法
May 27 Python
用python的turtle模块实现给女票画个小心心
Nov 23 Python
Python 过滤错误log并导出的实例
Dec 26 Python
matplotlib 对坐标的控制,加图例注释的操作
Apr 17 Python
Python Tornado核心及相关原理详解
Jun 24 Python
python使用pymysql模块操作MySQL
Jun 16 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
ThinkPHP3.1新特性之Action参数绑定
2014/06/19 PHP
PHP中mysqli_affected_rows作用行数返回值分析
2014/12/26 PHP
PHP获取POST数据的几种方法汇总
2015/03/03 PHP
PHP异常处理浅析
2015/05/12 PHP
php将图片文件转换成二进制输出的方法
2015/06/10 PHP
Yii 2.0在Grid中格式化时间方法示例
2017/06/06 PHP
Laravel框架路由设置与使用示例
2018/06/12 PHP
PHP读取文件或采集时解决中文乱码
2021/03/09 PHP
List the Codec Files on a Computer
2007/06/18 Javascript
jquery 应用代码 方便的排序功能
2010/02/06 Javascript
超实用的JavaScript代码段 附使用方法
2016/05/22 Javascript
基于JS代码实现实时显示系统时间
2016/06/16 Javascript
JS扩展类,克隆对象与混合类实例分析
2016/11/26 Javascript
JS去除字符串中空格的方法
2017/02/14 Javascript
VUE饿了么树形控件添加增删改功能的示例代码
2017/10/17 Javascript
vue+axios实现文件下载及vue中使用axios的实例
2018/09/21 Javascript
layui实现下拉复选功能的例子(包括数据的回显与上传)
2019/09/24 Javascript
解决包含在label标签下的checkbox在ie8及以下版本点击事件无效果兼容的问题
2019/10/27 Javascript
JavaScript实现Excel表格效果
2020/02/07 Javascript
简单介绍Python中的RSS处理
2015/04/13 Python
Python图像处理之识别图像中的文字(实例讲解)
2018/05/10 Python
Python进阶之使用selenium爬取淘宝商品信息功能示例
2019/09/16 Python
Python3的socket使用方法详解
2020/02/18 Python
python实时监控logstash日志代码
2020/04/27 Python
如何使用Pytorch搭建模型
2020/10/26 Python
Python 实现RSA加解密文本文件
2020/12/30 Python
python实现马丁策略的实例详解
2021/01/15 Python
资产评估专业大学生求职信
2013/09/29 职场文书
集团公司人力资源部岗位职责
2014/01/03 职场文书
商场促销活动方案
2014/02/08 职场文书
二手房购房协议书范本
2014/10/05 职场文书
群众路线表态发言材料
2014/10/17 职场文书
大学生党课心得体会
2016/01/07 职场文书
教师外出学习心得体会
2016/01/18 职场文书
学长教您写论文:经验总结
2019/07/09 职场文书
Python语言中的数据类型-序列
2022/02/24 Python