Tratar con tipos mixtos anidados
Anteriormente, utilizamos la expresión in
para ver si los datos están en un diccionario como if 'cookies' in recipes_dict
. Sin embargo, ¿qué pasa si queremos encontrar datos en una clave de diccionario que es una lista de diccionarios? En ese caso, podemos utilizar un bucle for para recorrer los elementos de la lista anidada y operar sobre ellos. Además, podemos aprovechar las comprensiones de listas para filtrar eficazmente listas anidadas de diccionarios. Por ejemplo: [cookie for cookie in recipes["cookies"] if "chocolate chip" in cookie["name"]]
devolvería una lista de las galletas de la lista de recetas que tienen pepitas de chocolate en la clave del nombre de la galleta.
Hemos cargado un diccionario squirrels_by_park
con nombres de parques para las claves y una lista de diccionarios de las ardillas.
Este ejercicio forma parte del curso
Tipos de datos en Python
Instrucciones de ejercicio
Utiliza un bucle for para iterar sobre las ardillas encontradas en la clave
Tompkins Square Park
desquirrels_by_park
:- Imprime con seguridad cada una de las actividades de cada ardilla.
Imprime la lista de
'Cinnamon'
primary_fur_color
ardillas encontradas enUnion Square Park
utilizando una comprensión de listas.
Ejercicio interactivo práctico
Pruebe este ejercicio completando este código de muestra.
# 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 "____" ____ ____["____"]])