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连接sql server乱码的解决方法
Jan 28 Python
python多线程threading.Lock锁用法实例
Nov 01 Python
Python抽象类的新写法
Jun 18 Python
详解Python中的变量及其命名和打印
Mar 11 Python
Python随机读取文件实现实例
May 25 Python
Tensorflow的可视化工具Tensorboard的初步使用详解
Feb 11 Python
python 判断网络连通的实现方法
Apr 22 Python
Python实现爬取百度贴吧帖子所有楼层图片的爬虫示例
Apr 26 Python
python matplotlib 在指定的两个点之间连线方法
May 25 Python
两个元祖T1=('a', 'b'),T2=('c', 'd')使用匿名函数将其转变成[{'a': 'c'},{'b': 'd'}]的几种方法
Mar 05 Python
详解pycharm配置python解释器的问题
Oct 15 Python
Selenium结合BeautifulSoup4编写简单的python爬虫
Nov 06 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中在数据库中保存Checkbox数据(2)
2006/10/09 PHP
ajax+php打造进度条代码[readyState各状态说明]
2010/04/12 PHP
PHP数据集构建JSON格式及新数组的方法
2012/11/07 PHP
ini_set的用法介绍
2014/01/07 PHP
php swoole多进程/多线程用法示例【基于php7nts版】
2019/08/12 PHP
TNC vs BOOM BO3 第一场2.13
2021/03/10 DOTA
指定js可访问其它域名的cookie的方法
2007/09/18 Javascript
语义化 H1 标签
2008/01/14 Javascript
JQuery 学习笔记 选择器之一
2009/07/23 Javascript
js子页面获取父页面数据示例
2014/05/15 Javascript
jQuery中map()方法用法实例
2015/01/06 Javascript
JavaScript实现重置表单(reset)的方法
2015/04/02 Javascript
easyui Droppable组件实现放置特效
2015/08/19 Javascript
JS实现从顶部下拉显示的带动画QQ客服特效代码
2015/10/24 Javascript
jQuery+ajax实现文章点赞功能的方法
2015/12/31 Javascript
解析Node.js异常处理中domain模块的使用方法
2016/02/16 Javascript
js获取鼠标点击的对象,点击另一个按钮删除该对象的实现代码
2016/05/13 Javascript
ionic实现带字的toggle滑动组件
2016/08/27 Javascript
利用JQuery直接调用asp.net后台的简单方法
2016/10/27 Javascript
JS简单判断字符在另一个字符串中出现次数的2种常用方法
2017/04/20 Javascript
JS实现横向轮播图(初级版)
2020/06/24 Javascript
vue 使用rules对表单字段进行校验的步骤
2020/12/25 Vue.js
[01:53]2016完美“圣”典风云人物:Maybe专访
2016/12/05 DOTA
Django的数据模型访问多对多键值的方法
2015/07/21 Python
Python秒算24点实现及原理详解
2019/07/29 Python
把富文本的回车转为br标签
2019/08/09 HTML / CSS
HTML5 history新特性pushState、replaceState及两者的区别
2015/12/26 HTML / CSS
LN-CC英国:伦敦时尚生活的缩影
2019/09/01 全球购物
师范毕业生自荐信
2013/10/17 职场文书
体育之星事迹材料
2014/05/11 职场文书
汽修专业自荐信
2014/07/07 职场文书
学习实践科学发展观心得体会
2014/09/10 职场文书
我爱家乡演讲稿
2014/09/12 职场文书
纪律委员竞选稿
2015/11/19 职场文书
初三语文教学反思
2016/03/03 职场文书
MySQL派生表联表查询实战过程
2022/03/20 MySQL