python collections模块的使用


Posted in Python onOctober 16, 2020

collections模块

collections模块:提供一些python八大类型以外的数据类型

python默认八大数据类型:

- 整型

- 浮点型

- 字符串

- 字典

- 列表

- 元组

- 集合

- 布尔类型

1、具名元组

具名元组只是一个名字

应用场景:

① 坐标

# 应用:坐标
from collections import namedtuple

# 将"坐标"变成"对象"的名字
# 传入可迭代对象必须是有序的
point = namedtuple("坐标", ["x", "y" ,"z"])  # 第二个参数既可以传可迭代对象
# point = namedtuple("坐标", "x y z")  # 也可以传字符串,但是字符串之间以空格隔开
p = point(1, 2, 5)  # 注意元素的个数必须跟namedtuple中传入的可迭代对象里面的值数量一致

# 会将1 --> x , 2 --> y , 5 --> z
print(p)
print(p.x)
print(p.y)
print(p.z)

执行结果:

坐标(x=1, y=2, z=5)
1
2
5

② 扑克牌

# 扑克牌
from collections import namedtuple

# 获取扑克牌对象
card = namedtuple("扑克牌", "color number")

# 产生一张张扑克牌
red_A = card("红桃", "A")
print(red_A)
black_K = card("黑桃", "K")
print(black_K)

执行结果:

扑克牌(color='红桃', number='A')
扑克牌(color='黑桃', number='K')

③ 个人信息

# 个人的信息
from collections import namedtuple

p = namedtuple("china", "city name age")

ty = p("TB", "ty", "31")
print(ty)

执行结果:

china(city='TB', name='ty', age='31')

2、有序字典

python中字典默认是无序的

collections中提供了有序的字典: from collections import OrderedDict

# python默认无序字典
dict1 = dict({"x": 1, "y": 2, "z": 3})
print(dict1, "  ------>  无序字典")
print(dict1.get("x"))


# 使用collections模块打印有序字典
from collections import OrderedDict

order_dict = OrderedDict({"x": 1, "y": 2, "z": 3})
print(order_dict, "  ------>  有序字典")
print(order_dict.get("x"))  # 与字典取值一样,使用.get()可以取值
print(order_dict["x"])  # 与字典取值一样,使用key也可以取值
print(order_dict.get("y"))
print(order_dict["y"])
print(order_dict.get("z"))
print(order_dict["z"])

执行结果:

{'x': 1, 'y': 2, 'z': 3}  ------>  无序字典
1
OrderedDict([('x', 1), ('y', 2), ('z', 3)])  ------>  有序字典
1
1
2
2
3
3

以上就是python collections模块的使用的详细内容,更多关于python collections模块的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
Python只用40行代码编写的计算器实例
May 10 Python
Bottle框架中的装饰器类和描述符应用详解
Oct 28 Python
python如何压缩新文件到已有ZIP文件
Mar 14 Python
Python实现读取字符串按列分配后按行输出示例
Apr 17 Python
浅谈python的dataframe与series的创建方法
Nov 12 Python
Python反爬虫技术之防止IP地址被封杀的讲解
Jan 09 Python
浅谈Python 多进程默认不能共享全局变量的问题
Jan 11 Python
python+rsync精确同步指定格式文件
Aug 29 Python
利用Python如何实时检测自身内存占用
May 09 Python
Pyinstaller打包Scrapy项目的实现步骤
Sep 22 Python
分享一个python的aes加密代码
Dec 22 Python
Python中全局变量和局部变量的理解与区别
Feb 07 Python
python 如何使用find和find_all爬虫、找文本的实现
Oct 16 #Python
Django实现随机图形验证码的示例
Oct 15 #Python
如何使用Python自动生成报表并以邮件发送
Oct 15 #Python
如何在Win10系统使用Python3连接Hive
Oct 15 #Python
Python进行特征提取的示例代码
Oct 15 #Python
Python通过递归函数输出嵌套列表元素
Oct 15 #Python
Python安装第三方库攻略(pip和Anaconda)
Oct 15 #Python
You might like
PHPLog php 程序调试追踪工具
2009/09/09 PHP
PHP 解决session死锁的方法
2013/06/20 PHP
php+mysqli数据库连接的两种方式
2015/01/28 PHP
浅谈json_encode用法
2015/03/05 PHP
PHP+Ajax+JS实现多图上传
2016/05/07 PHP
JavaScript 格式字符串的应用
2010/03/29 Javascript
JS下高效拼装字符串的几种方法比较与测试代码
2010/04/15 Javascript
javascript对数组的常用操作代码 数组方法总汇
2011/01/27 Javascript
判断用户是否在线的代码
2011/03/05 Javascript
JavaScript实现表格排序方法
2013/06/14 Javascript
js实现点击向下展开的下拉菜单效果代码
2015/09/01 Javascript
JavaScript隐式类型转换
2016/03/15 Javascript
JavaScript中的操作符类型转换示例总结
2016/05/30 Javascript
jquery ezUI 双击行记录弹窗查看明细的实现方法
2016/06/01 Javascript
jquery中用jsonp实现搜索框功能
2016/10/18 Javascript
JavaScript中String对象的方法介绍
2017/01/04 Javascript
Vue导出json数据到Excel电子表格的示例
2017/12/04 Javascript
React SSR样式及SEO的实践
2018/10/22 Javascript
JQuery模拟实现网页中自定义鼠标右键菜单功能
2018/11/14 jQuery
JavaScript中引用vs复制示例详析
2018/12/06 Javascript
原生js实现公告滚动效果
2021/01/10 Javascript
BootstrapValidator验证用户名已存在(ajax)
2019/11/08 Javascript
[34:47]完美世界DOTA2联赛PWL S2 Magma vs LBZS 第一场 11.18
2020/11/18 DOTA
Python 获取 datax 执行结果保存到数据库的方法
2019/07/11 Python
对Python获取屏幕截图的4种方法详解
2019/08/27 Python
ubuntu上安装python的实例方法
2019/09/30 Python
详解HTML5中的manifest缓存使用
2015/09/09 HTML / CSS
英国家用电器购物网站:Hughes
2018/02/23 全球购物
澳大利亚拥有最好的家具和家居用品在线目的地:Nestz
2019/02/23 全球购物
业务副厂长岗位职责
2014/01/03 职场文书
尽职尽责村干部自我鉴定
2014/01/23 职场文书
食品安全工作方案
2014/05/07 职场文书
小学运动会班级口号
2014/06/09 职场文书
交通安全主题班会
2015/08/12 职场文书
人事任命书范本
2015/09/21 职场文书
基于Python实现股票收益率分析
2022/04/02 Python