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!
 
            