本文作為《流暢的python》學(xué)習(xí)筆記,記錄學(xué)習(xí)進(jìn)度
具名元組
collections.nametuple 是一個工廠函數(shù),可以用來構(gòu)建一個帶字段名的元組,和一個有名字的類
創(chuàng)建具名元組需要兩個參數(shù)
- 類的名字
- 各個字段的名字
- 由數(shù)個字符串組成的可迭代對象
- 由空格分隔開的字段名組成的字符串
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的形式返回