python定义具名元组实例操作

作者:小妮浅浅 时间:2023-05-16 22:22:55 

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__'。

来源:https://www.py.cn/jishu/jichu/27137.html

标签:python,具名元组
0
投稿

猜你喜欢

  • Python中集合类型(set)学习小结

    2023-03-18 13:56:27
  • Golang 中反射的应用实例详解

    2024-02-12 03:12:06
  • 定位后无法选择容器的内容解决方案

    2008-07-30 12:08:00
  • PyQt5+Caffe+Opencv搭建人脸识别登录界面

    2022-06-18 01:42:25
  • 数据库查询优化之子查询优化

    2024-01-27 18:25:25
  • sql server中datetime字段去除时间的语句

    2024-01-23 17:47:57
  • SQL Server 中的数据类型隐式转换问题

    2024-01-16 21:05:38
  • 提高javascript的速度系列(序)

    2008-07-15 12:38:00
  • Python 阶乘详解

    2022-01-16 13:56:00
  • 使用python爬虫获取黄金价格的核心代码

    2023-11-03 22:55:28
  • 用python求一重积分和二重积分的例子

    2021-09-30 10:01:19
  • Python OpenCV对图像进行模糊处理详解流程

    2022-05-16 03:54:19
  • 详解如何在阿里云上安装mysql

    2024-01-14 08:25:57
  • 详解numpy矩阵的创建与数据类型

    2022-07-12 15:59:17
  • Python当中的array数组对象实例详解

    2022-02-12 23:22:47
  • js实现微信聊天效果

    2024-04-16 09:14:33
  • Python判断字符串是否xx开始或结尾的示例

    2023-02-07 18:35:28
  • SQLServer 2008 新增T-SQL 简写语法

    2024-01-28 23:49:25
  • Go语言中如何确保Cookie数据的安全传输

    2024-05-22 10:21:43
  • vue prop属性传值与传引用示例

    2024-05-10 14:10:16
  • asp之家 网络编程 m.aspxhome.com