具名元组 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)])

具名元组的使用方法总结相关推荐

  1. namedtuple 具名元组详解

    1. 概述 namedtuple译作具名元组或命名元组 具名元组可以理解为元组的增强版本,它适用于任何普通元组的应用范围. 具名元组为元组中的每个元素都赋予了含义,从而增强代码可读性,能够让程序员写出 ...

  2. 具名元组namedtuple

    具名元组namedtuple 因为元组的局限性:不能为元组内部的数据进行命名,所以往往我们并不知道一个元组所要表达的意义,所以在这里引入了 collections.namedtuple 这个工厂函数, ...

  3. python之具名元组

    具名元组的定义 Python标准库collections中定义了具名元组(namedtuple)工厂函数,它可以构建带字段名的元组. 工厂函数参数详解 变量名 = namedtuple(typenam ...

  4. Python 3.7.1 中 namedtuple 具名元组基本用法详解

    Python 3.7.1 中 namedtuple 具名元组基本用法详解 转载请注明出处:https://blog.csdn.net/jpch89/article/details/84645251 文 ...

  5. python中如何调用或修改元组中的元素_python 元组的使用方法

    元组--tuple 列表非常适合用于存储在程序运行期间可能变化的数据集. 列表是可以修改的,但元组是不可修改的 Python将不能修改的值称为不可变的,而不可变的列表被称为元组 1. 元组的创建和删除 ...

  6. Python中的具名元组类用法

    >>> from collections import namedtuple >>> Point = namedtuple('Point', ['x', 'y', ...

  7. Python 具名元组

    具名元组collections.namedtuple是一个工厂函数, 可以用于构建一个带字段名的元组和一个有名字的类. 定义与使用具名元组 创建一个具名元组需要两个参数, 一个是类名, 一个是类的各字 ...

  8. Python namedtuple ——具名元组

    本文主要介绍namedtuple类型对象的创建以及对应属性的访问. namedtuple位于Python内置模块collections,属于tuple子类,类似于C/C++中的struct结构体,na ...

  9. python中元组拆包_Python 元组拆包和具名元组解析

    Python 元组拆包和具名元组解析 前言 在 Python 中元组是一个相较于其他语言比较特别的一个内置序列类型有些 python 入门教程把元组成为不可变的列表, 这种说法是不完备的, 其并没有完 ...

最新文章

  1. 同构多核和异构多核简单介绍
  2. 2021各国人均GDP(IMF2021年10月版)
  3. 【python】python第二周作业
  4. 【转】LCS和LCS服务器应用程序概述
  5. dcp9030cdn定影_兄弟Brother DCP-9030CDN打印机驱动(修复DCP-9030CDN打印机连接故障)V1.0 正式版...
  6. 王国权辞任中国电信股份有限公司执行副总裁
  7. 在网站中使用Session的简单例子
  8. ELK详解(五)——Head插件简单使用
  9. cordova与android通信_使用Cordova插件实现两个app之间的相互调用和通讯
  10. DSP28335的RS232串口通讯试验
  11. Teigha4.0数据结构和读取
  12. txt文件的编码结构
  13. 云开发地铁路线图小程序源码和配置教程
  14. 为什么相关不等于因果
  15. 自动抢某投资公司的理财产品预购
  16. 【C语言】OJ题:printf函数的返回值
  17. qq邮件服务器名字怎么填,qq邮箱名称应该填写什么?(写qq昵称不好使)
  18. 千年虫10周年了,今天才第一次碰到。
  19. linux vbox安装mac os,使用virtualbox虚拟机安装macos和linux系统
  20. 万兴PDF修改编辑软件 原PDFelement 7word转pdf转换软件

热门文章

  1. 利用JS来实现表格的全选、全不选、反选以及删除的功能
  2. 烧一根不均匀的绳,从头烧到尾总共需要一个小时。现在有若干条材质相同的绳子,问如何用烧绳的方法来计时一个小时十五分钟呢?
  3. 简述卡西欧5800p计算机,fx5800p
  4. 从「雄狮」到「瑶光」,奇瑞历史突破背后的十字路口
  5. 微型计算机基础理论——计算机中的数制及其应用
  6. 集丰照明|一帖说清6种防眩射灯应用在家装修上
  7. delta和gamma中性_趣谈希腊字母(Delta和Gamma)
  8. 去你的35岁危机|ONES 人物
  9. 利用swiper在vue中做轮播图,并改变轮播图的原有箭头、图片等内容
  10. js点击箭头旋转的实现