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中使用动态变量名的方法
May 06 Python
Python实现的科学计算器功能示例
Aug 04 Python
对pycharm 修改程序运行所需内存详解
Dec 03 Python
Python单元测试unittest的具体使用示例
Dec 17 Python
python协程之动态添加任务的方法
Feb 19 Python
Django框架搭建的简易图书信息网站案例
May 25 Python
Python学习笔记之文件的读写操作实例分析
Aug 07 Python
python实现智能语音天气预报
Dec 02 Python
Django 项目布局方法(值得推荐)
Mar 22 Python
Python叠加矩形框图层2种方法及效果
Jun 18 Python
基于python实现判断字符串是否数字算法
Jul 10 Python
Python json解析库jsonpath原理及使用示例
Nov 25 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
php urlencode()与urldecode()函数字符编码原理详解
2011/12/06 PHP
php中的ini配置原理详解
2014/10/14 PHP
浅析php适配器模式(Adapter)
2014/11/25 PHP
php中的动态调用实例分析
2015/01/07 PHP
关于PHP中字符串与多进制转换函数的实例代码
2016/11/03 PHP
ThinkPHP删除栏目(实现批量删除栏目)
2017/06/21 PHP
PHP7使用ODBC连接SQL Server2008 R2数据库示例【基于thinkPHP5.1框架】
2019/05/06 PHP
php字符串函数 str类常见用法示例
2020/05/15 PHP
dropdownlist之间的互相联动实现(显示与隐藏)
2009/11/24 Javascript
分享精心挑选的23款美轮美奂的jQuery 图片特效插件
2012/08/14 Javascript
解析URI与URL之间的区别与联系
2013/11/22 Javascript
JavaScript中对象属性的添加和删除示例
2014/05/12 Javascript
浅谈JavaScript函数节流
2014/12/09 Javascript
45个JavaScript编程注意事项、技巧大全
2015/02/11 Javascript
jQuery统计指定子元素数量的方法
2015/03/17 Javascript
Node.js Mongodb 密码特殊字符 @的解决方法
2017/04/11 Javascript
js读取本地文件的实例
2017/12/22 Javascript
vue watch关于对象内的属性监听
2019/04/22 Javascript
基于iview的router常用控制方式
2019/05/30 Javascript
vue实现自定义H5视频播放器的方法步骤
2019/07/01 Javascript
Vue项目实现换肤功能的一种方案分析
2019/08/28 Javascript
解决iview table组件里的 固定列 表格不自适应的问题
2020/11/13 Javascript
[01:05:07]DOTA2-DPC中国联赛 正赛 DLG vs Dragon BO3 第一场2月1日
2021/03/11 DOTA
Python实现的堆排序算法示例
2018/04/29 Python
python 实现矩阵上下/左右翻转,转置的示例
2019/01/23 Python
pytorch torch.expand和torch.repeat的区别详解
2019/11/05 Python
python网络编程socket实现服务端、客户端操作详解
2020/03/24 Python
Django Admin后台添加数据库视图过程解析
2020/04/01 Python
Python unittest如何生成HTMLTestRunner模块
2020/09/08 Python
GAP阿联酋官网:GAP UAE
2017/11/30 全球购物
Brasty波兰:香水、化妆品、手表网上商店
2019/04/15 全球购物
JPA面试常见问题
2016/11/14 面试题
工程项目合作意向书
2015/05/08 职场文书
实习证明格式范文
2015/06/16 职场文书
mysql查询的控制语句图文详解
2021/04/11 MySQL
Sleuth+logback 设置traceid 及自定义信息方式
2021/07/26 Java/Android