1. 程式人生 > 程式設計 >Python namedtuple命名元組實現過程解析

Python namedtuple命名元組實現過程解析

這篇文章主要介紹了Python namedtuple命名元組實現過程解析,文中通過示例程式碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

命名元組(namedtuple)是一種帶有屬性的元組,它們是組合只讀資料的很好的方式。

相比一般的元組,構造命名元組需要先匯入namedtuple,因為它不在預設的名稱空間裡。然後通過名字和屬性來定義一個命名元組。這會返回一個像類一樣的物件,可以進行多次例項化。

命名元組可以被打包、解包以及做所有可以對普通元組做的事,並且還可以像一個物件一樣訪問它的某個屬性。

命名元組非常適合表示“只有資料”的情況,但並不是對所有情況來說都非常理想。和元組及字串一樣,命名元組也是不可變的,因此一旦為屬性設定了值之後就不能更改。

如果需要修改儲存的資料,用字典型別會更合適。

from collections import namedtuple

# 建立一個namedtuple的學生類,第一個引數是命名元組的名稱,第二個引數是命名元組的屬性,多個用空格隔開(或者逗號)
Student = namedtuple('Student','gender age height')

# 例項化學生,賦予屬性,和上面第二個引數相對應
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.68
24
==============
Female
18
1.68

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。