【流暢的Python】01-用namedtuple方法構建簡單類
阿新 • • 發佈:2018-12-15
namedtuple () 是 collections 庫中的方法,也叫具名元組,是元組的升級版 namedtuple的例項和tuple的例項消耗的記憶體一樣多。 自Python2.6 開始,namedtuple加入到Python中, 用以構建只有少數屬性但是沒有方法的物件,比如資料庫條目。
import collections
"""實現一個簡單類"""
# 定義簡單類Role
# 兩種方法
# Simple_class = collections.namedtuple('Role', ('id', 'name'))
Simple_class = collections.namedtuple( 'Role', ['id', 'name'])
"""
相當於
class Role(Object):
def __init__(self, id, name):
self.id = id
self.name = name
"""
# 初始化
role1 = Simple_class('1', 'Tom')
# 輸出測試
print(role1)
print(role1.id)
print(role1.name)
執行結果:
>> Role(id='1', name='Tom')
>> 1
>> Tom
namedtuple還可以將list轉換成對應的namedtuple型別
import collections
Simple_class = collections.namedtuple('Role', ('id', 'name'))
hero = ['1', '關羽']
hero = Simple_class._make(hero)
print(hero)
執行結果:
Role(id='1', name='關羽')
——《流暢的python》學習筆記