ComeçarComece gratuitamente

Como lidar com dicionários aninhados

Um dicionário pode conter outro dicionário como o valor de uma chave, e essa é uma maneira muito comum de lidar com estruturas de dados repetitivas, como dados anuais, mensais ou semanais. Todas as mesmas regras se aplicam ao criar ou acessar o dicionário.

Por exemplo, se você tivesse um dicionário com uma classificação do meu consumo de cookies por ano e tipo de cookie. Ela deve ficar assim cookies = {'2017': {'chocolate chip': 483, 'peanut butter': 115}, '2016': {'chocolate chip': 9513, 'peanut butter': 6792}}. Eu poderia acessar quantos biscoitos de chocolate eu comi em 2016 usando cookies['2016']['chocolate chip'].

Ao explorar um novo dicionário, pode ser útil usar o método .keys() para ter uma ideia de quais dados podem estar disponíveis no dicionário. Você também pode iterar sobre um dicionário e ele retornará cada chave do dicionário para usar dentro do loop.

Carregamos um dicionário squirrels_by_park com nomes de parques para as chaves e um dicionário aninhado de dados de esquilos.

Este exercício faz parte do curso

Tipos de dado em Python

Ver Curso

Instruções de exercício

  • Imprima as chaves do dicionário squirrels_by_park, NOTE: Elas são park_names.

  • Imprima as chaves do dicionário squirrels_by_park para o park_name Union Square Park.

  • Faça um loop no dicionário squirrels_by_park.

    • Dentro do loop, imprima com segurança o park_name e o highlights_in_fur_color. Imprima 'N/A' se highlightsinfur_color não for encontrado ou None.

Exercício interativo prático

Experimente este exercício preenchendo este código de exemplo.

# 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[____].____('____', '____'))
Editar e executar código