Hantera nästlade blandade typer
Tidigare använde vi uttrycket in för att kontrollera om data finns i en dictionary, till exempel if 'cookies' in recipes_dict. Men vad gör vi om vi vill söka i en dictionarynyckel som innehåller en lista av dictionaries? I det fallet kan vi använda en for-slinga för att iterera över elementen i den nästlade listan och bearbeta dem. Vi kan också använda list comprehensions för att effektivt filtrera nästlade listor av dictionaries. Till exempel skulle [cookie for cookie in recipes["cookies"] if "chocolate chip" in cookie["name"]] returnera en lista med cookies i recipes-listan där nyckelns name innehåller chocolate chip.
Vi har läst in en squirrels_by_park-dictionary med parknamn som nycklar och en lista av dictionaries med ekorrdata som värden.
Den här övningen är en del av kursen
Datatyper i Python
Övningsinstruktioner
- Använd en for-slinga för att iterera över ekorrarna som finns under nyckeln
Tompkins Square Parkisquirrels_by_park:- Skriv ut varje ekorrens aktiviteter på ett säkert sätt.
- Skriv ut listan över ekorrar med
primary_fur_color'Cinnamon'som finns iUnion Square Parkmed hjälp av en list comprehension.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# 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 "____" ____ ____["____"]])