1
resposta

Update?

def km_media(dataset, ano_atual):
    result = {}
    for item in dataset.items():
        media = item[1]['km'] / (ano_atual - item[1]['ano'])
        result.update({ item[0]: media })
    return result

Por que é utilizado o update nesse return?

1 resposta

Olá, Catarine. Tudo bem?

Agradeço a paciência por esperar a resposta.

O update() é utilizado para atualizar/adicionar pares de chave-valor no seu dicionário. Nesse caso, estamos atualizando o par item[0]: media, onde o item[0] seria o nome do carro e a media seria a quilometragem média do carro.

Nesse caso, você também poderia atualizar/adicionar os valores de outra forma, sem utilizar o update().

Para isso, você pode utilizar a chave item[0] como índice do dicionário, para poder criar uma nova chave e adicionar o valor. Então, ao invés de utilizar o update(), podemos fazer da seguinte forma:

result[item[0]] = media

Mas qual a vantagem de usar o update()?

Você pode atualizar várias chaves de uma vez. Por exemplo, se você tivesse os dois dicionários a seguir:

Dicionario1 = {'A': 'Amarelo', 'B': 'Azul'}
Dicionario2 = {'B': 'Vermelho'}

Poderíamos atualizar o Dicionario1 com o Dicionario2, da seguinte forma:

Dicionario1.update(Dicionario2)
print(Dicionario1)

Saída:

{'A': 'Amarelo', 'B': 'Vermelho'}

Você também pode usar pares chave-valor iteráveis, que são aqueles objetos que a gente consegue percorrer com loops, como o for. Como exemplo, vamos atualizar o Dicionario1 mais uma vez, dessa vez, com uma tupla:

Dicionario1.update(B='Rosa', C='Verde')
Dicionario1

Saída:

{'A': 'Amarelo', 'B': 'Rosa', 'C': 'Verde'}

 

Espero ter ajudado, Catarine. Se tiver mais alguma dúvida, estou à disposição. Bons estudos =)

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!