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 相关文章推荐
pycharm 使用心得(三)Hello world!
Jun 05 Python
python中的函数用法入门教程
Sep 02 Python
python dict.get()和dict['key']的区别详解
Jun 30 Python
python获取文件路径、文件名、后缀名的实例
Apr 23 Python
python3 requests中使用ip代理池随机生成ip的实例
May 07 Python
python递归全排列实现方法
Aug 18 Python
python爬虫 urllib模块反爬虫机制UA详解
Aug 20 Python
浅谈Django2.0 加xadmin踩的坑
Nov 15 Python
python和pywin32实现窗口查找、遍历和点击的示例代码
Apr 01 Python
构建高效的python requests长连接池详解
May 02 Python
简单介绍一下pyinstaller打包以及安全性的实现
Jun 02 Python
python实现学生管理系统开发
Jul 24 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 tp验证表单与自动填充函数代码
2012/02/22 PHP
利用谷歌 Translate API制作自己的翻译脚本
2014/06/04 PHP
PHP排序算法之冒泡排序(Bubble Sort)实现方法详解
2018/04/20 PHP
php7 错误处理机制修改实例分析
2020/05/25 PHP
Javascript SHA-1:Secure Hash Algorithm
2006/12/20 Javascript
jQuery对象和DOM对象使用说明
2010/06/25 Javascript
js复制网页内容并兼容各主流浏览器的代码
2013/12/17 Javascript
jquery分页对象使用示例
2014/04/01 Javascript
Javascript字符串浏览器兼容问题分析
2014/12/01 Javascript
JavaScript DOM元素尺寸和位置
2015/04/13 Javascript
JQuery入门基础小实例(1)
2015/09/17 Javascript
jQuery插件Timelinr 实现时间轴特效
2015/10/04 Javascript
学习JavaScript设计模式(多态)
2015/11/25 Javascript
浅谈js基本数据类型和typeof
2016/08/09 Javascript
BootStrap中jQuery插件Carousel实现轮播广告效果
2017/03/27 jQuery
微信小程序之多文件下载的简单封装示例
2018/01/29 Javascript
vue项目打包部署_nginx代理访问方法详解
2018/09/20 Javascript
node+express框架中连接使用mysql(经验总结)
2018/11/10 Javascript
vue框架中props的typescript用法详解
2020/02/17 Javascript
Vue组件化开发之通用型弹出框的实现
2020/02/28 Javascript
Js on及addEventListener原理用法区别解析
2020/07/11 Javascript
[45:34]完美世界DOTA2联赛PWL S3 Rebirth vs CPG 第一场 12.18
2020/12/19 DOTA
python批量修改文件后缀示例代码分享
2013/12/24 Python
python实现折半查找和归并排序算法
2017/04/14 Python
Python 将pdf转成图片的方法
2018/04/23 Python
Python pexpect模块及shell脚本except原理解析
2020/08/03 Python
美国著名的婴儿学步鞋老品牌:Robeez
2016/08/20 全球购物
伦敦剧院门票:From The Box Office
2018/06/30 全球购物
Java基础类库面试题
2013/09/04 面试题
北京捷通华声语音技术有限公司Java软件工程师笔试题
2012/04/10 面试题
小学运动会表扬稿
2014/01/19 职场文书
农村面貌改造提升实施方案
2014/03/18 职场文书
颁奖晚会主持词
2014/03/25 职场文书
求职信名称怎么写
2014/05/26 职场文书
警告通知
2015/04/25 职场文书
MySQL的安装与配置详细教程
2021/06/26 MySQL