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

[Dúvida] Duvida no algoritimo da função

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

Pessoal, consegui compreender que essa função é uma função que adiciona o km medio com base no ano passado a lista de dicionários, que por fim será transaformada em um data frame.

Porém não entendi no desenvolvimento da função na parte da média: o que seria o item[1] do item[1]['km']? No caso dos dicionários, as chaves contam como indices também?

Nesse caso então, o item 0 da lista, que é o dicionário do crossfox, a chave 'crossfox é o indice [0] e a 'ano'[1]? Porque na função não é usado item[0] já que o crossfox seria o item 0 da lista de dicionários?

2 respostas
solução!

Olá, Marcellus! Belezinha? Espero que sim!

O método dataset.items() retorna lista de tuplas com as chaves e os valores do dicionário dataset. Então se temos um dicionário do seguinte formato:

dataset = {
    'A': 'conteudo1',
    'B': 'conteudo2',
    'C': 'conteudo3'
}

E utilizarmos dataset.items(), o resultado é uma saída:

dict_items([
('A', 'conteudo1'), 
('B', 'conteudo2'), 
('C', 'conteudo3')
])

E quando fazemos a iteração, no laço FOR, usando a variável item, vamos ter dois elementos por vez. Onde item[0], que é a chave do dicionário, e o item[1], que é o conteúdo do dicionário.

É importante lembrar que esse objeto que o dataset.items() retorna é uma lista de três elementos, e em cada elemento uma tupla com dois conteúdos. E como utilizamos um laço FOR, nós estamos considerando apenas uma tupla por vez dessa lista. É por isso que o índice não coincide com a posição da chave no dicionário. E só existem os índices 0 e 1 por iteração no laço for.

Se ainda tiver alguma dúvida, estou por aqui. Ótimos estudos e grande abraço!

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

Muito obrigado pelo esclarecimento Marcus!