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

本文详细介绍了 Python 3.7.1 中的 namedtuble,包括它的定义、参数、方法和属性。namedtuble 提供了元组的增强版本,增加代码可读性,支持属性查找和索引操作。文章讨论了 typename、field_names、rename、defaults 和 module 等参数,并展示了 _make、_asdict 和 _replace 等方法的使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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

转载请注明出处:https://blog.youkuaiyun.com/jpch89/article/details/84645251



0. 参考资料


1. 概述

namedtuple 大多数翻译作具名元组命名元组,个人喜欢前者的译法。
具名元组可以理解为元组的增强版本,它适用于任何普通元组的应用范围。
具名元组为元组中的每个元素都赋予了含义,从而增强代码可读性,能够让程序员写出自文档化 self-documenting 的代码。


2. namedtuple() 定义与参数

namedtuple() 工厂函数返回一个具名元组类,该函数位于 collections 模块下,具体定义形式如下:

namedtuple(typename, field_names, *, rename=False, defaults=None, module=None)

2.1 typename 参数

namedtuple 返回一个元组的子类(即具名元组类),类名为 typename
通过具名元组类创建出来的具名元组对象,其内部元素支持属性查找(点号语法)、索引操作(方括号语法),并且是可迭代的
具名元组对象还有自动生成的文档字符串,和一个 __repr__() 方法,把具名元组对象展示为 name=value 的格式。
下面是一小段示例代码:

from collections import namedtuple

Student = namedtuple('Student', 'name, gender')
s = Student('小花', '女')

# 属性访问
print(s.name)
print(s.gender)
"""
小花
女
"""

# 索引取值
print(s[0])
print(s[1])
"""
小花
女
"""

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值