Python namedtuple命名元组实现过程解析


Posted in Python onJanuary 08, 2020

这篇文章主要介绍了Python namedtuple命名元组实现过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

命名元组(namedtuple)是一种带有属性的元组,它们是组合只读数据的很好的方式。

相比一般的元组,构造命名元组需要先导入namedtuple,因为它不在默认的命名空间里。然后通过名字和属性来定义一个命名元组。这会返回一个像类一样的对象,可以进行多次实例化。

命名元组可以被打包、解包以及做所有可以对普通元组做的事,并且还可以像一个对象一样访问它的某个属性。

命名元组非常适合表示“只有数据”的情况,但并不是对所有情况来说都非常理想。和元组及字符串一样,命名元组也是不可变的,因此一旦为属性设定了值之后就不能更改。

如果需要修改存储的数据,用字典类型会更合适。

from collections import namedtuple

# 创建一个namedtuple的学生类,第一个参数是命名元组的名称,第二个参数是命名元组的属性,多个用空格隔开(或者逗号)
Student = namedtuple('Student', 'gender age height')

# 实例化学生,赋予属性,和上面第二个参数相对应
Miles = Student('Male', 24, 1.92)
Mary = Student('Female', 18, 1.68)

# 查看属性
print(Miles)      # 查看Miles所有属性
print(Mary.height)   # 查看Mary的身高
print(Miles[1])     # 通过索引查看Miles的年龄
print('==============')

# 遍历元组
for i in Mary:
  print(i)

输出:

Student(gender='Male', age=24, height=1.92)
1.68
24
==============
Female
18
1.68

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python操作CouchDB数据库简单示例
Mar 10 Python
python让图片按照exif信息里的创建时间进行排序的方法
Mar 16 Python
python中__call__内置函数用法实例
Jun 04 Python
放弃 Python 转向 Go语言有人给出了 9 大理由
Oct 20 Python
Python实现改变与矩形橡胶的线条的颜色代码示例
Jan 05 Python
matplotlib绘图实例演示标记路径
Jan 23 Python
python matlibplot绘制3D图形
Jul 02 Python
Python txt文件加入字典并查询的方法
Jan 15 Python
Python使用Shelve保存对象方法总结
Jan 28 Python
在python中利用try..except来代替if..else的用法
Dec 19 Python
Python selenium抓取虎牙短视频代码实例
Mar 02 Python
移除Selenium中window.navigator.webdriver值
Jun 10 Python
Pytorch基本变量类型FloatTensor与Variable用法
Jan 08 #Python
python pycharm最新版本激活码(永久有效)附python安装教程
Sep 18 #Python
pytorch 中pad函数toch.nn.functional.pad()的用法
Jan 08 #Python
pycharm激活码有效到2020年11月底
Sep 18 #Python
pymysql的简单封装代码实例
Jan 08 #Python
pytorch使用 to 进行类型转换方式
Jan 08 #Python
Pycharm 2020年最新激活码(亲测有效)
Sep 18 #Python
You might like
实用的简单PHP分页集合包括使用方法
2013/10/21 PHP
php检测iis环境是否支持htaccess的方法
2014/02/18 PHP
PHP中批量生成静态html(命令行下运行PHP)
2014/04/19 PHP
php第一次无法获取cookie问题处理
2014/12/15 PHP
TP5框架实现的数据库备份功能示例
2020/04/05 PHP
解决js正则匹配换行问题实现代码
2012/12/10 Javascript
node.js中的querystring.parse方法使用说明
2014/12/10 Javascript
js实现数组转换成json
2015/06/26 Javascript
jQuery验证插件validate使用详解
2016/05/11 Javascript
jquery 实现回车登录详解及实例代码
2016/10/23 Javascript
js中获取键盘按下键值event.keyCode、event.charCode和event.which的兼容性详解
2017/03/15 Javascript
vue-cli webpack 开发环境跨域详解
2017/05/18 Javascript
JavaScript使用atan2来绘制箭头和曲线的实例
2017/09/14 Javascript
微信小程序实现用table显示数据库反馈的多条数据功能示例
2019/05/07 Javascript
深入理解javascript prototype的相关知识
2019/09/19 Javascript
深入分析jQuery.one() 函数
2020/06/03 jQuery
[02:29]DOTA2英雄基础教程 陈
2013/12/17 DOTA
在Python中使用__slots__方法的详细教程
2015/04/28 Python
Python打印输出数组中全部元素
2018/03/13 Python
Python匿名函数/排序函数/过滤函数/映射函数/递归/二分法
2019/06/05 Python
通过pycharm使用git的步骤(图文详解)
2019/06/13 Python
对Python中小整数对象池和大整数对象池的使用详解
2019/07/09 Python
Python实现生成密码字典的方法示例
2019/09/02 Python
网易微博Web App用HTML5开发的过程介绍
2012/06/13 HTML / CSS
德国机车企业:FC-Moto
2017/10/27 全球购物
STAUD官方网站:洛杉矶独有的闲适风格
2019/04/11 全球购物
俄罗斯品牌服装和鞋子的在线商店:KUPIVIP
2019/10/27 全球购物
俄罗斯小米家用电器、电子产品和智能家居商店:Poood.ru
2020/04/03 全球购物
汽车制造与装配专业自荐信范文
2014/01/02 职场文书
对孩子的寄语
2014/04/09 职场文书
期末学生评语大全
2014/04/24 职场文书
机动车登记业务委托书
2014/10/08 职场文书
2014年工程师工作总结
2014/11/25 职场文书
市级三好学生评语
2014/12/29 职场文书
2015年妇联工作总结范文
2015/04/22 职场文书
2019公司管理制度
2019/04/19 职场文书