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 list 合并连接字符串的方法
Mar 09 Python
Python内置函数的用法实例教程
Sep 08 Python
Python+Wordpress制作小说站
Apr 14 Python
python中requests使用代理proxies方法介绍
Oct 25 Python
DataFrame中的object转换成float的方法
Apr 10 Python
django session完成状态保持的方法
Nov 27 Python
python计算阶乘和的方法(1!+2!+3!+...+n!)
Feb 01 Python
python实现布隆过滤器及原理解析
Dec 08 Python
Python 实现向word(docx)中输出
Feb 13 Python
Python 剪绳子的多种思路实现(动态规划和贪心)
Feb 24 Python
详解Python flask的前后端交互
Mar 31 Python
Python中生成随机数据安全性、多功能性、用途和速度方面进行比较
Apr 14 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
用PHP制作静态网站的模板框架(三)
2006/10/09 PHP
php对关联数组循环遍历的实现方法
2015/03/13 PHP
Lumen timezone 时区设置方法(慢了8个小时)
2018/01/20 PHP
JS+XML 省份和城市之间的联动实现代码
2009/10/14 Javascript
JavaScript实现简单图片滚动附源码下载
2014/06/17 Javascript
javascript 获取函数形参个数
2014/07/31 Javascript
Javascript前端UI框架Kit使用指南之kitjs事件管理
2014/11/28 Javascript
jquery实现可拖拽弹出层特效
2015/01/04 Javascript
JavaScript 基本概念
2015/01/20 Javascript
实例详解ECMAScript5中新增的Array方法
2016/04/05 Javascript
jQuery弹出窗口打开链接的实现代码
2016/12/24 Javascript
从零开始学习Node.js系列教程一:http get和post用法分析
2017/04/13 Javascript
Bootstrap进度条与AJAX后端数据传递结合使用实例详解
2017/04/23 Javascript
详解angularjs获取元素以及angular.element()用法
2017/07/25 Javascript
js实现数字跳动到指定数字
2020/08/25 Javascript
简单介绍Python中用于求最小值的min()方法
2015/05/15 Python
使用python为mysql实现restful接口
2018/01/05 Python
python scp 批量同步文件的实现方法
2019/01/03 Python
python使用sessions模拟登录淘宝的方式
2019/08/16 Python
在python中利用try..except来代替if..else的用法
2019/12/19 Python
用pytorch的nn.Module构造简单全链接层实例
2020/01/14 Python
python GUI库图形界面开发之PyQt5布局控件QGridLayout详细使用方法与实例
2020/03/06 Python
Python无头爬虫下载文件的实现
2020/04/02 Python
3种适用于Python的疯狂秘密武器及原因解析
2020/04/29 Python
Schecker荷兰:狗狗用品和配件
2019/06/06 全球购物
犯错检讨书
2014/02/21 职场文书
大课间活动实施方案
2014/03/06 职场文书
2014学雷锋活动心得体会
2014/03/10 职场文书
10的分与合教学反思
2014/04/30 职场文书
小学优秀班主任事迹材料
2014/05/17 职场文书
网络技术专业求职信
2014/07/13 职场文书
2014年银行个人工作总结
2014/12/05 职场文书
四年级小学生评语
2014/12/26 职场文书
幼儿园大班开学寄语(2015秋季)
2015/05/27 职场文书
Django利用AJAX技术实现博文实时搜索
2021/05/06 Python
详解Vue3使用axios的配置教程
2022/04/29 Vue.js