Gestire dizionari annidati
Un dizionario può contenere un altro dizionario come valore di una chiave: è un modo molto comune per gestire strutture di dati ripetute, come dati annuali, mensili o settimanali. Le stesse regole valgono quando crei o accedi al dizionario.
Per esempio, se avessi un dizionario con il ranking del mio consumo di biscotti per anno e tipo di biscotto, potrebbe essere cookies = {'2017': {'chocolate chip': 483, 'peanut butter': 115}, '2016': {'chocolate chip': 9513, 'peanut butter': 6792}}. Potrei accedere a quanti chocolate chip cookies ho mangiato nel 2016 con cookies['2016']['chocolate chip'].
Quando esplori un nuovo dizionario, può essere utile usare il metodo .keys() per farti un'idea di quali dati siano disponibili al suo interno. Puoi anche iterare su un dizionario e otterrai ciascuna chiave del dizionario da usare all'interno del ciclo.
Abbiamo caricato un dizionario squirrels_by_park con i nomi dei parchi come chiavi e un dizionario annidato con i dati di uno scoiattolo.
Questo esercizio fa parte del corso
Tipi di dati in Python
Istruzioni dell'esercizio
- Stampa le chiavi del dizionario
squirrels_by_park. NOTA: sono ipark_names. - Stampa le chiavi del dizionario
squirrels_by_parkper il park_nameUnion Square Park. - Itera sul dizionario
squirrels_by_park.- All'interno del ciclo, stampa in modo sicuro il
park_namee ilhighlights_in_fur_color. Stampa'N/A'se highlightsinfur_color non è presente o è None.
- All'interno del ciclo, stampa in modo sicuro il
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
# 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[____].____('____', '____'))