python定义具名元组实例操作


Posted in Python onFebruary 28, 2021

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__'。

到此这篇关于python定义具名元组实例操作的文章就介绍到这了,更多相关python如何定义具名元组内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
zbar解码二维码和条形码示例
Feb 07 Python
Python3处理文件中每个词的方法
May 22 Python
你应该知道的python列表去重方法
Jan 17 Python
Python中easy_install 和 pip 的安装及使用
Jun 05 Python
对python使用http、https代理的实例讲解
May 07 Python
解决Pycharm界面的子窗口不见了的问题
Jan 17 Python
实现Python与STM32通信方式
Dec 18 Python
python如何查看网页代码
Jun 07 Python
Python学习之路之pycharm的第一个项目搭建过程
Jun 18 Python
Python基于time模块表示时间常用方法
Jun 18 Python
Python SQLAlchemy库的使用方法
Oct 13 Python
pytorch损失反向传播后梯度为none的问题
May 12 Python
python推导式的使用方法实例
Feb 28 #Python
python线程优先级队列知识点总结
Feb 28 #Python
利用Opencv实现图片的油画特效实例
Feb 28 #Python
利用python实现后端写网页(flask框架)
Feb 28 #Python
python pyg2plot的原理知识点总结
Feb 28 #Python
python在协程中增加任务实例操作
Feb 28 #Python
python 制作本地应用搜索工具
Feb 27 #Python
You might like
php在多维数组中根据键名快速查询其父键以及父键值的代码
2011/05/07 PHP
搭建自己的PHP MVC框架详解
2017/08/16 PHP
php统计数组不同元素的个数的实例方法
2019/09/26 PHP
利用javascript查看html源文件
2006/11/08 Javascript
使用jquery实现图文切换效果另加特效
2013/01/20 Javascript
jquery 动态创建元素的方式介绍及应用
2013/04/21 Javascript
JQuery+CSS提示框实现思路及代码(纯手工打造)
2013/05/07 Javascript
jquery ajax 简单范例(界面+后台)
2013/11/19 Javascript
javascript异步编程的4种方法
2014/02/19 Javascript
js操纵dom生成下拉列表框的方法
2014/02/24 Javascript
全面兼容的javascript时间格式化函数(比较实用)
2014/05/14 Javascript
自己封装的javascript事件队列函数版
2014/06/12 Javascript
AngularJS内建服务$location及其功能详解
2016/07/01 Javascript
bootstrap vue.js实现tab效果
2017/02/07 Javascript
vue mintui-Loadmore结合实现下拉刷新和上拉加载示例
2017/10/12 Javascript
React Native基础入门之初步使用Flexbox布局
2018/07/02 Javascript
对Vue table 动态表格td可编辑的方法详解
2018/08/28 Javascript
vue2.* element tabs tab-pane 动态加载组件操作
2020/07/19 Javascript
[39:53]完美世界DOTA2联赛PWL S2 LBZS vs Forest 第一场 11.19
2020/11/19 DOTA
python生成指定长度的随机数密码
2014/01/23 Python
Tensorflow简单验证码识别应用
2017/05/25 Python
Python生成一个迭代器的实操方法
2019/06/18 Python
python sklearn库实现简单逻辑回归的实例代码
2019/07/01 Python
简单了解python的内存管理机制
2019/07/08 Python
基于django传递数据到后端的例子
2019/08/16 Python
NumPy统计函数的实现方法
2020/01/21 Python
python3中celery异步框架简单使用+守护进程方式启动
2021/01/20 Python
德国圣伯纳德草药屋:Kräuterhaus Sanct Bernhard(有中文站)
2018/08/05 全球购物
Java程序员面试题
2013/07/15 面试题
俞敏洪北大演讲稿
2014/05/22 职场文书
2015高考寄语集锦
2015/02/27 职场文书
幼儿园综治宣传月活动总结
2015/05/07 职场文书
2016国庆节67周年红领巾广播稿
2015/12/18 职场文书
2016学校先进集体事迹材料
2016/02/29 职场文书
优秀新员工事迹材料
2019/05/13 职场文书
vue项目中的支付功能实现(微信支付和支付宝支付)
2022/02/18 Vue.js