處理巢狀字典
字典的值可以是另一個字典。這是在處理每年、每月或每週等重複結構的資料時非常常見的作法。建立或存取這類字典時,規則與一般字典完全相同。
例如,你有一個字典,記錄我依年份與餅乾種類的食用排名。它可能長這樣:cookies = {'2017': {'chocolate chip': 483, 'peanut butter': 115}, '2016': {'chocolate chip': 9513, 'peanut butter': 6792}}。我可以用 cookies['2016']['chocolate chip'] 來存取我在 2016 年吃了多少塊巧克力豆餅乾。
在探索新的字典時,使用 .keys() 方法可以幫助你了解字典中可能有哪些資料。你也可以對字典進行迭代,迭代時會依序回傳每個鍵,讓你在迴圈中使用。
我們已載入一個 squirrels_by_park 字典,鍵是公園名稱,值是單一松鼠資料的巢狀字典。
本練習屬於課程
Python 的資料型別
練習說明
- 印出
squirrels_by_park字典的鍵,注意:它們是park_names。 - 印出
squirrels_by_park字典中Union Square Park這個 park_name 的鍵。 - 迴圈走訪
squirrels_by_park字典。- 在迴圈中,安全地印出
park_name和highlights_in_fur_color。若找不到 highlightsinfur_color,或其值為 None,則印出'N/A'。
- 在迴圈中,安全地印出
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
# Print a list of keys from the squirrels_by_park dictionary
print(____)
# Print the keys from the squirrels_by_park dictionary for 'Union Square Park'
print(____)
# Loop over the dictionary
for park_name in squirrels_by_park:
# Safely print the park_name and the highlights_in_fur_color or 'N/A'
print(park_name, squirrels_by_park[____].____('____', '____'))