具名元组的使用方法总结
具名元组 collections.namedtuple
首先元组支持拆包,通过*args的形式
>>>a, b, *test = range(5)
>>>a, b, test
(0, 1, [2, 3, 4])
好的,那接下来,变量test已经有值了,毫无疑问test = [2, 3, 4]
但有时候我们可能需要取到test中某一个元素的值,例如2,当然我们可以选择列表切片,那有没有一种更好的办法呢?
这里就可以采用具名元组的方式,给test中的每一个字段命名。
import collections
>>>People = collections.namedtuple('Card', ['name', 'age'])
>>>xiaohong = People('xiaohong', '18')
>>>xiaohong
People(name='xiaohong', age='18')
>>>xiaohong.name
xiaohong
>>>xiaohong.age
18
说明:
1.创建具名元组需要两个参数,一个是类名,一个是类的各个字段的名字。后者可以是由数个字符串组成的可迭代对象。
2.存放在对应字段里的数据要以一串参数的形式传入到构造函数中
3.可以通过字段名和位置来获取一个字段的信息
属性和方法
# 获取类包含所有的字段名称
>>>Poeple._fields
('name', 'age')
>>>xiaoming = ('xiaoming', 19)
# _make接收一个可迭代对象来生成一个类的实例
>>>xiaoming = People._make(xiaoming)
# _asdict()是具名元组以collections.OrderedDict的形式返回,进行更有好的显示
>>>xiaoming._asdict()
OrderedDict([('name', 'xiaoming'), ('age', 19)])
具名元组的使用方法总结相关推荐
- namedtuple 具名元组详解
1. 概述 namedtuple译作具名元组或命名元组 具名元组可以理解为元组的增强版本,它适用于任何普通元组的应用范围. 具名元组为元组中的每个元素都赋予了含义,从而增强代码可读性,能够让程序员写出 ...
- 具名元组namedtuple
具名元组namedtuple 因为元组的局限性:不能为元组内部的数据进行命名,所以往往我们并不知道一个元组所要表达的意义,所以在这里引入了 collections.namedtuple 这个工厂函数, ...
- python之具名元组
具名元组的定义 Python标准库collections中定义了具名元组(namedtuple)工厂函数,它可以构建带字段名的元组. 工厂函数参数详解 变量名 = namedtuple(typenam ...
- Python 3.7.1 中 namedtuple 具名元组基本用法详解
Python 3.7.1 中 namedtuple 具名元组基本用法详解 转载请注明出处:https://blog.csdn.net/jpch89/article/details/84645251 文 ...
- python中如何调用或修改元组中的元素_python 元组的使用方法
元组--tuple 列表非常适合用于存储在程序运行期间可能变化的数据集. 列表是可以修改的,但元组是不可修改的 Python将不能修改的值称为不可变的,而不可变的列表被称为元组 1. 元组的创建和删除 ...
- Python中的具名元组类用法
>>> from collections import namedtuple >>> Point = namedtuple('Point', ['x', 'y', ...
- Python 具名元组
具名元组collections.namedtuple是一个工厂函数, 可以用于构建一个带字段名的元组和一个有名字的类. 定义与使用具名元组 创建一个具名元组需要两个参数, 一个是类名, 一个是类的各字 ...
- Python namedtuple ——具名元组
本文主要介绍namedtuple类型对象的创建以及对应属性的访问. namedtuple位于Python内置模块collections,属于tuple子类,类似于C/C++中的struct结构体,na ...
- python中元组拆包_Python 元组拆包和具名元组解析
Python 元组拆包和具名元组解析 前言 在 Python 中元组是一个相较于其他语言比较特别的一个内置序列类型有些 python 入门教程把元组成为不可变的列表, 这种说法是不完备的, 其并没有完 ...
最新文章
- 同构多核和异构多核简单介绍
- 2021各国人均GDP(IMF2021年10月版)
- 【python】python第二周作业
- 【转】LCS和LCS服务器应用程序概述
- dcp9030cdn定影_兄弟Brother DCP-9030CDN打印机驱动(修复DCP-9030CDN打印机连接故障)V1.0 正式版...
- 王国权辞任中国电信股份有限公司执行副总裁
- 在网站中使用Session的简单例子
- ELK详解(五)——Head插件简单使用
- cordova与android通信_使用Cordova插件实现两个app之间的相互调用和通讯
- DSP28335的RS232串口通讯试验
- Teigha4.0数据结构和读取
- txt文件的编码结构
- 云开发地铁路线图小程序源码和配置教程
- 为什么相关不等于因果
- 自动抢某投资公司的理财产品预购
- 【C语言】OJ题:printf函数的返回值
- qq邮件服务器名字怎么填,qq邮箱名称应该填写什么?(写qq昵称不好使)
- 千年虫10周年了,今天才第一次碰到。
- linux vbox安装mac os,使用virtualbox虚拟机安装macos和linux系统
- 万兴PDF修改编辑软件 原PDFelement 7word转pdf转换软件