開始使用免費開始

建立用來儲存資料的 namedtuple

在處理資料時,你常會使用字典,因為用鍵名能讓程式碼更好讀,也更容易取用資料。Python 還有另一種容器 namedtuple,它本質上是 tuple,但為 tuple 的每個位置都提供了名稱。你可以在建立時指定型別名稱,並提供欄位名稱的清單。

例如,Cookie = namedtuple("Cookie", ['name', 'quantity']) 會建立一個容器,你可以用 Cookie('chocolate chip', 1) 產生新的此型別物件。之後可用 name 屬性取用名稱,用 quantity 屬性取得數量。

在這個練習中,你要把一直在用的企鵝體重紀錄資料重構為 namedtuple,讓程式碼更具描述性。

本練習屬於課程

Python 的資料型別

檢視課程

練習說明

  • collections 匯入 namedtuple
  • 建立一個名為 SpeciesDetails 的 namedtuple,型別名稱為 SpeciesDetails,欄位為 'species''sex''body_mass'
  • 建立一個名為 labeled_entries 的清單。
  • 走訪 weight_log 清單,將每筆資料解包為 speciessexbody_mass,為每筆資料建立一個新的 SpeciesDetails namedtuple 實例,並把它加入 labeled_entries

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

# Import namedtuple from collections
from collections import ____

# Create the namedtuple: SpeciesDetails
SpeciesDetails = ____(____, ['species', 'sex', 'body_mass'])

# Create the empty list: labeled_entries
labeled_entries = []

# Iterate over the weight_log entries
for ____, ____, ____ in ____:
    # Append a new SpeciesDetails namedtuple instance for each entry to labeled_entries
    ____
    
print(labeled_entries[:5])
編輯並執行程式碼