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 相关文章推荐
零基础写python爬虫之爬虫编写全记录
Nov 06 Python
python根据出生日期获得年龄的方法
Mar 31 Python
Python基于动态规划算法计算单词距离
Jul 25 Python
Python基于pygame实现图片代替鼠标移动效果
Nov 11 Python
Python 由字符串函数名得到对应的函数(实例讲解)
Aug 10 Python
在Python中定义一个常量的方法
Nov 10 Python
详解Django+uwsgi+Nginx上线最佳实战
Mar 14 Python
在Qt中正确的设置窗体的背景图片的几种方法总结
Jun 19 Python
PyQt 图解Qt Designer工具的使用方法
Aug 06 Python
Pycharm创建项目时如何自动添加头部信息
Nov 14 Python
使用opencv中匹配点对的坐标提取方式
Jun 04 Python
django数据模型中null和blank的区别说明
Sep 02 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 数组排序 array_multisort与uasort的区别
2011/03/24 PHP
smarty模板判断数组为空的方法
2015/06/10 PHP
yii2项目实战之restful api授权验证详解
2017/05/20 PHP
PHP中echo与print区别点整理
2021/03/09 PHP
Javascript数组的排序 sort()方法和reverse()方法
2012/06/04 Javascript
js 获取坐标 通过JS得到当前焦点(鼠标)的坐标属性
2013/01/04 Javascript
JavaScript中数组成员的添加、删除介绍
2014/12/30 Javascript
jQuery基于$.ajax设置移动端click超时处理方法
2016/05/14 Javascript
利用Vue.js指令实现全选功能
2016/09/08 Javascript
angularjs 中$apply,$digest,$watch详解
2016/10/13 Javascript
基于JavaScript实现移动端无限加载分页
2017/03/27 Javascript
Vue 过滤器filters及基本用法
2017/12/26 Javascript
Angularjs实现控制器之间通信方式实例总结
2018/03/27 Javascript
.vue文件 加scoped 样式不起作用的解决方法
2018/05/28 Javascript
微信小程序设置全局请求URL及封装wx.request请求操作示例
2019/04/02 Javascript
vue项目打包上传github并制作预览链接(pages)
2019/04/19 Javascript
个人小程序接入支付解决方案
2019/05/23 Javascript
JavaScript中将值转换为字符串的五种方法总结
2019/06/06 Javascript
使用layer弹窗,制作编辑User信息页面的方法
2019/09/27 Javascript
JS通过识别id、value值对checkbox设置选中状态
2020/02/19 Javascript
解决VueCil代理本地proxytable无效报错404的问题
2020/11/07 Javascript
python显示生日是星期几的方法
2015/05/27 Python
在Django的上下文中设置变量的方法
2015/07/20 Python
Python当中的array数组对象实例详解
2019/06/12 Python
Python 占位符的使用方法详解
2019/07/10 Python
Jupyter notebook 远程配置及SSL加密教程
2020/04/14 Python
对Keras中predict()方法和predict_classes()方法的区别说明
2020/06/09 Python
英国乐购杂货:Tesco Groceries
2018/11/29 全球购物
安德玛加拿大官网:Under Armour加拿大
2019/10/02 全球购物
计算机专业自荐信
2013/10/14 职场文书
聊城大学毕业生自荐书
2014/02/01 职场文书
个人向公司借款协议书
2014/10/09 职场文书
2014年物流工作总结
2014/11/25 职场文书
2019职场实习报告该怎么写?
2019/07/01 职场文书
Golang标准库syscall详解(什么是系统调用)
2021/05/25 Golang
pytorch 实现在测试的时候启用dropout
2021/05/27 Python