1
resposta

Slice em dicionários

Olá, pensei nesta forma de resolver o exercício 05 da aula 04 ( Quilometragem média de um veículo) , mas não deu certo, eu não entendi qual foi o erro no fatiamento, segue o código:

>>> 
dados = {
    'Crossfox': {'km': 35000, 'ano': 2005}, 
    'DS5': {'km': 17000, 'ano': 2015}, 
    'Fusca': {'km': 130000, 'ano': 1979}, 
    'Jetta': {'km': 56000, 'ano': 2011}, 
    'Passat': {'km': 62000, 'ano': 1999}
}
def km_media(dataset, ano_atual):
    for item in dataset.items():
        result = item[1][0] / (ano_atual - item[1][1])
        print(result)


>>> km_media(dados, 2019)
Traceback (most recent call last):
  File "<pyshell#60>", line 1, in <module>
    km_media(dados, 2019)
  File "<pyshell#59>", line 3, in km_media
    result = item[1][0] / (ano_atual - item[1][1])
KeyError: 0
>>> 
1 resposta

Olá Stephania! Tudo certinho por aí??

Então, o slice vai funcionar em listas, esse foi o problema encontrado. Ali como você utilizou o [0] no lugar do índice 'km' e o [1]no lugar do índice 'ano' do dicionário, não surtiu efeito e retornou esse erro.

Aconselho dar uma olhada em estruturas de dados e também em slices. Olha esse Post que respondi e tem indicações de links que te ajudarão nisso =)

Espero ter ajudado e qualquer dúvida é só retornar aqui! Bons estudos!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software