這篇文章主要介紹了Python namedtuple命名元組實(shí)現(xiàn)過程解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
命名元組(namedtuple)是一種帶有屬性的元組,它們是組合只讀數(shù)據(jù)的很好的方式。
相比一般的元組,構(gòu)造命名元組需要先導(dǎo)入namedtuple,因?yàn)樗辉谀J(rèn)的命名空間里。然后通過名字和屬性來定義一個(gè)命名元組。這會(huì)返回一個(gè)像類一樣的對象,可以進(jìn)行多次實(shí)例化。
命名元組可以被打包、解包以及做所有可以對普通元組做的事,并且還可以像一個(gè)對象一樣訪問它的某個(gè)屬性。
命名元組非常適合表示“只有數(shù)據(jù)”的情況,但并不是對所有情況來說都非常理想。和元組及字符串一樣,命名元組也是不可變的,因此一旦為屬性設(shè)定了值之后就不能更改。
如果需要修改存儲(chǔ)的數(shù)據(jù),用字典類型會(huì)更合適。
from collections import namedtuple# 創(chuàng)建一個(gè)namedtuple的學(xué)生類,第一個(gè)參數(shù)是命名元組的名稱,第二個(gè)參數(shù)是命名元組的屬性,多個(gè)用空格隔開(或者逗號(hào))Student = namedtuple('Student', 'gender age height')# 實(shí)例化學(xué)生,賦予屬性,和上面第二個(gè)參數(shù)相對應(yīng)Miles = Student('Male', 24, 1.92)Mary = Student('Female', 18, 1.68)# 查看屬性print(Miles) # 查看Miles所有屬性print(Mary.height) # 查看Mary的身高print(Miles[1]) # 通過索引查看Miles的年齡print('==============')# 遍歷元組for i in Mary: print(i)
輸出:
Student(gender='Male', age=24, height=1.92)1.6824==============Female181.68
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持武林網(wǎng)之家。
|
新聞熱點(diǎn)
疑難解答
圖片精選