namedtuple

Python中的tuple(元组)大家应该都非常熟悉了,它可以存储一个Python对象序列,与list(列表)不同的是,你不能改变tuple中元素的值,tuple的元素是通过索引进行访问的:
   在这里插入图片描述
Tuple还有一个兄弟,叫namedtuple。虽然都是tuple,但是功能更为强大。对于namedtuple,你不必再通过索引值进行访问,你可以把它看做一个字典通过名字进行访问,只不过其中的值是不能改变的:
   在这里插入图片描述为了构造一个namedtuple需要两个参数,分别是tuple的名字和其中域的名字。比如在上例中,tuple的名字是“Animal”,它包括三个域,分别是“name”、“age”和“type”。

Namedtuple比普通tuple具有更好的可读性,可以使代码更易于维护。同时与字典相比,又更加的轻量和高效。但是有一点需要注意,就是namedtuple中的属性都是不可变的。任何尝试改变其属性值的操作都是非法的:
在这里插入图片描述

Namedtuple还有一个非常好的一点是,它与tuple是完全兼容的。也就是说,我们依然可以用索引去访问一个namedtuple:
在这里插入图片描述

转载:https://baijiahao.baidu.com/s?id=1613589944704758634&wfr=spider&for=pc

猜你喜欢

转载自blog.csdn.net/qq_32486393/article/details/88820795