本文作为《流畅的python》学习笔记,记录学习进度
具名元组
collections.nametuple 是一个工厂函数,可以用来构建一个带字段名的元组,和一个有名字的类
创建具名元组需要两个参数
- 类的名字
- 各个字段的名字
- 由数个字符串组成的可迭代对象
- 由空格分隔开的字段名组成的字符串
Card = collections.nametuple('Card', ['rank', 'suit'])

from collections import namedtuple
City = namedtuple('City', 'name country population coordinates')
tokey = City('Tokyo', 'JP', '36.933', '(35.689722, 129.691667)')
print(tokyo)
可以通过字段名或位置来获取一个字段的信息

tokyo.population
# '36.933'
tokyo[0]
# 'Tokyo'
_fields返回包含这个类所有字段名称的元成

City._fields
_make方法

用_make()通过接受一个可迭代对象来生成这个类的一个实例,等价于City(*delhi_data)

_asdict() 把具名元组以collections.OrderedDict的形式返回