python定义具名元组实例操作
作者:小妮浅浅 时间:2023-05-16 22:22:55
1、定义具名元组需要2个参数,第1个参数是类名,第2个参数是字段名,既可以是可迭代对象(如列表和元组),也可以是空格间隔的字符串:
Card = collections.namedtuple("Card", ("rank", "suit"))
Card = collections.namedtuple("Card", "rank suit")
2、初始化时以一串参数形式传入构造函数:
card_test = Card("J", "hearts")
3、既可以通过.运算符,也可以用索引来取值:
print(card_test.rank)
print(card_test[1])
知识点扩展:
具名元组的定义
Python标准库collections中定义了具名元组(namedtuple)工厂函数,它可以构建带字段名的元组。
工厂函数参数详解
变量名 = namedtuple(typename, field_names, *, rename=False, defaults=None, module=None)
namedtuple工厂函数的参数详解:
typename:定义具名元组的名称,字符串型。
field_names:定义具名元组的字段名。该参数可以使用2种格式:
内部元素都是字符串的列表或元组;
例如['商品','单价','数量']或('商品','单价','数量')
以英文逗号','分隔的长字符串。字段名必须符合以下规则:
例如'商品,单价,数量'
字段名命名规则:
不能与关键字重名
不能以下划线开头
以字母(包括汉字)开头,由字母、数字、下划线组成。
rename:默认是False,意思是必须指定字段名。若为True,系统会对缺省的、重复的字段名自动重命名为'_索引值'。
defaults:设置默认值,可以是列表、元组,当字段数量大于defaults的元素数量时,后面的字段获得缺省值。
例如字段名有'a','b','c'这3个,缺省值给了'1','2'两个缺省值时,'b'=1,'c'=2。
module:设置所属模块,默认是'__main__'。
来源:https://www.py.cn/jishu/jichu/27137.html
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
Python中集合类型(set)学习小结
Golang 中反射的应用实例详解
![](https://img.aspxhome.com/file/2023/1/105151_0s.png)
定位后无法选择容器的内容解决方案
PyQt5+Caffe+Opencv搭建人脸识别登录界面
![](https://img.aspxhome.com/file/2023/5/103075_0s.jpg)
数据库查询优化之子查询优化
![](https://img.aspxhome.com/file/2023/4/97994_0s.png)
sql server中datetime字段去除时间的语句
SQL Server 中的数据类型隐式转换问题
![](https://img.aspxhome.com/file/2023/8/119218_0s.png)
提高javascript的速度系列(序)
Python 阶乘详解
![](https://img.aspxhome.com/file/2023/1/66871_0s.png)
使用python爬虫获取黄金价格的核心代码
![](https://img.aspxhome.com/file/2023/3/120303_0s.jpg)
用python求一重积分和二重积分的例子
Python OpenCV对图像进行模糊处理详解流程
![](https://img.aspxhome.com/file/2023/5/86675_0s.png)
详解如何在阿里云上安装mysql
详解numpy矩阵的创建与数据类型
![](https://img.aspxhome.com/file/2023/5/96955_0s.png)
Python当中的array数组对象实例详解
![](https://img.aspxhome.com/file/2023/8/81708_0s.png)