1. 程式人生 > >【流暢的Python】01-用namedtuple方法構建簡單類

【流暢的Python】01-用namedtuple方法構建簡單類

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》學習筆記