Boa noite,
Estou com uma dúvida em um exercício do curso 'Python para Data Science: funções, pacotes e pandas. O objetivo da tarefa é adicionar novos valores em um dicionário a partir da criação de uma função. O dados iniciais são esses:
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}
}
A primeira coisa que o exercício pede é encontrar a media de quilometragem e depois colocar esse valor em outra coleção de dados. Dessa forma: 'Crossfox': {'km': 35000, 'ano': 2005, 'km_media': media}. O código é:
def km_media(dataset, ano_atual):
result = {}
for item in dataset.items():
media = item[1]['km'] / (ano_atual - item[1]['ano'])
item[1].update({ 'km_media': media })
result.update({ item[0]: item[1] })
return result
A dúvida: por que o update é usado duas vezes? Eu não poderia fazer o update diretamente em dataset?
Obrigado!