Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Erro em Iterando em dicionários de dicionários

O exercício pede para que selecionemos a alternativa que apresenta o código que imprime somente os nomes dos veículos com ano de fabricação maior ou igual a 2000.

dados = { 'Crossfox': {'valor': 72000, 'ano': 2005}, 'DS5': {'valor': 125000, 'ano': 2015}, 'Fusca': {'valor': 150000, 'ano': 1976}, 'Jetta': {'valor': 88000, 'ano': 2010}, 'Passat': {'valor': 106000, 'ano': 1998} }

A resposta correta é:

for item in dados.items(): if(item[1]['ano'] >= 2000): print(item[0])

Mas quando vou para meu notebook, dá algum tipo de erro, como visto no arquivo anexo. Não sei o que está errado!

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

2 respostas
solução!

Oi Bruno,

Pelo que posso ver do seu código e do erro que apresentou parece que você está fazendo referência em seu for ao dicionário dados e não ao dados2. No exercício anterior a este temos o seguinte dicionário:

dados = {'Jetta': 88000, 'Crossfox': 72000, 'DS5': 124000}

Se você rodar o seu for com este dicionário acontece exatamente o erro que você está nos mostrando. Tente rodar o seu código utilizando como iterador o dicionário dados2.

for item in dados2.items():
    if(item[1]['ano'] >= 2000):
        print(item[0])

Espero ter ajudado

Muito Obrigado, Rodrigo!!