ネストされた混在型を扱う
これまで、if 'cookies' in recipes_dict のように、辞書にデータが含まれているかを確認するために in 式を使いました。では、キーが「辞書のリスト」になっている場合はどうでしょうか?その場合は、for ループでネストされたリストの要素を順に処理できます。さらに、リスト内包表記を使うと、ネストされた辞書のリストを効率よくフィルタリングできます。例えば、[cookie for cookie in recipes["cookies"] if "chocolate chip" in cookie["name"]] は、recipes のリストのうち、cookie の name キーに "chocolate chip" を含むもののリストを返します。
squirrels_by_park 辞書は、公園名をキーにし、リスの辞書のリストを値として読み込んであります。
この演習はコースの一部です
Python のデータ型
演習の手順
squirrels_by_parkのTompkins Square Parkキーで見つかったリスについて、for ループで反復処理します。- 各リスの activities を安全に出力してください。
- リスト内包表記を使って、
Union Square Parkにいるprimary_fur_colorが'Cinnamon'のリスのリストを出力してください。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Use a for loop to iterate over the squirrels in Tompkins Square Park:
for squirrel in ____["____"]:
# Safely print the activities of each squirrel or None
print(____.____("____"))
# Print the list of 'Cinnamon' primary_fur_color squirrels in Union Square Park
print([squirrel for squirrel in ____["____"] if "____" ____ ____["____"]])