Python namedtuple命名元組實(shí)現(xiàn)過(guò)程解析
這篇文章主要介紹了Python namedtuple命名元組實(shí)現(xiàn)過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
命名元組(namedtuple)是一種帶有屬性的元組,它們是組合只讀數(shù)據(jù)的很好的方式。
相比一般的元組,構(gòu)造命名元組需要先導(dǎo)入namedtuple,因?yàn)樗辉谀J(rèn)的命名空間里。然后通過(guò)名字和屬性來(lái)定義一個(gè)命名元組。這會(huì)返回一個(gè)像類(lèi)一樣的對(duì)象,可以進(jìn)行多次實(shí)例化。
命名元組可以被打包、解包以及做所有可以對(duì)普通元組做的事,并且還可以像一個(gè)對(duì)象一樣訪(fǎng)問(wèn)它的某個(gè)屬性。
命名元組非常適合表示“只有數(shù)據(jù)”的情況,但并不是對(duì)所有情況來(lái)說(shuō)都非常理想。和元組及字符串一樣,命名元組也是不可變的,因此一旦為屬性設(shè)定了值之后就不能更改。
如果需要修改存儲(chǔ)的數(shù)據(jù),用字典類(lèi)型會(huì)更合適。
from collections import namedtuple
# 創(chuàng)建一個(gè)namedtuple的學(xué)生類(lèi),第一個(gè)參數(shù)是命名元組的名稱(chēng),第二個(gè)參數(shù)是命名元組的屬性,多個(gè)用空格隔開(kāi)(或者逗號(hào))
Student = namedtuple('Student', 'gender age height')
# 實(shí)例化學(xué)生,賦予屬性,和上面第二個(gè)參數(shù)相對(duì)應(yīng)
Miles = Student('Male', 24, 1.92)
Mary = Student('Female', 18, 1.68)
# 查看屬性
print(Miles) # 查看Miles所有屬性
print(Mary.height) # 查看Mary的身高
print(Miles[1]) # 通過(guò)索引查看Miles的年齡
print('==============')
# 遍歷元組
for i in Mary:
print(i)
輸出:
Student(gender='Male', age=24, height=1.92) 1.68 24 ============== Female 18 1.68
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Python多進(jìn)程協(xié)作模擬實(shí)現(xiàn)流程
當(dāng)多個(gè)進(jìn)程使用同一份數(shù)據(jù)資源的時(shí)候,因?yàn)檫M(jìn)程的運(yùn)行沒(méi)有順序,運(yùn)行起來(lái)也無(wú)法控制,如果不加以干預(yù),往往會(huì)引發(fā)數(shù)據(jù)安全或順序混亂的問(wèn)題,所以要在多個(gè)進(jìn)程讀寫(xiě)共享數(shù)據(jù)資源的時(shí)候加以適當(dāng)?shù)牟呗?,?lái)保證數(shù)據(jù)的一致性問(wèn)題2023-01-01
卷積神經(jīng)網(wǎng)絡(luò)如何實(shí)現(xiàn)提取特征
這篇文章主要介紹了卷積神經(jīng)網(wǎng)絡(luò)如何實(shí)現(xiàn)提取特征問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-04-04
Python入門(mén)教程(四十一)Python的NumPy數(shù)組索引
這篇文章主要介紹了Python入門(mén)教程(四十一)Python的NumPy數(shù)組索引,數(shù)組索引是指使用方括號(hào)([])來(lái)索引數(shù)組值,numpy提供了比常規(guī)的python序列更多的索引工具,除了按整數(shù)和切片索引之外,數(shù)組可以由整數(shù)數(shù)組索引、布爾索引及花式索引,需要的朋友可以參考下2023-05-05
python+tkinter編寫(xiě)電腦桌面放大鏡程序?qū)嵗a
這篇文章主要介紹了Python+tkinter編寫(xiě)電腦桌面放大鏡程序?qū)嵗a,具有一定借鑒價(jià)值,需要的朋友可以參考下2018-01-01
Python實(shí)現(xiàn)批量檢測(cè)ip地址連通性
這篇文章主要為大家詳細(xì)介紹了如何使用Python實(shí)現(xiàn)批量檢測(cè)ip地址連通性并以json格式顯示(支持傳參單IP或者網(wǎng)段),感興趣的小伙伴可以了解下2024-04-04
Starship定制shell提示符實(shí)現(xiàn)信息自由
這篇文章主要介紹了Starship定制shell提示符的實(shí)現(xiàn),讓你需要的所有信息觸手可及,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-03-03
Python+selenium 獲取瀏覽器窗口坐標(biāo)、句柄的方法
今天小編就為大家分享一篇Python+selenium 獲取瀏覽器窗口坐標(biāo)、句柄的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-10-10
Python OpenCV機(jī)器學(xué)習(xí)之圖像識(shí)別詳解
OpenCV中也提供了一些機(jī)器學(xué)習(xí)的方法,例如DNN等。本文將為大家詳細(xì)介紹一下OpenCV中利用機(jī)器學(xué)習(xí)實(shí)現(xiàn)的一些圖片識(shí)別功能:人臉識(shí)別、車(chē)牌識(shí)別等,感興趣的可以了解一下2022-01-01

