元組、列表和nametuple的區別
阿新 • • 發佈:2018-11-10
import collections Person = collections.namedtuple('Person','name age gender') print('type of person',type(Person)) # 建立物件 bob = Person(name='Bob',age=30,gender='male') user = bob._make(['vvv',24,'male']) print(user) print(bob) # 建立物件 Jane=Person(name='Jane',age=29,gender='female') # 獲取使用者屬性 print(Jane.name) # 修改物件屬性 jane = Jane._replace(age=10) print(jane) # 將物件轉換成字典 print(jane._asdict()) for people in [bob,Jane]: print("%s is %d years old %s" %people)
其中’Person’是這個namedtuple的名稱,後面的’name age gender’這個字串中三個用空格隔開的字元告訴我們,我們的這個namedtuple有三個元素,分別名為name,age和gender,Jane和bob是建立的物件,我們可以通過物件獲取裡面的屬性值。我們還可以通過list列表來建立物件,如:物件._mak()方法,修改物件屬性的方法是,物件._replace();物件._asdict()方法是將物件轉換成字典格式。