Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

mais uma duvida sobre o for

olá denovo!

até agora eu não entendi como funciona isso de colocar 2 items no for, no exemplo

for key, value in dados.items():
  if (value > 100000):
    print(key)

no caso do key, value, como funciona, o que esta acontecendo nesse caso?

1 resposta
solução!

Oi Roberval,

Vou tentar explicar com um exemplo simples. Considere o dicionário dados abaixo.

dados = {'A': 1, 'B': 2, 'C': 3}

Quando imprimimos o conteúdo de dados.items() temos um objeto dict_items que contém uma lista, cujos elementos são tuplas contendo dois valores cada.

dados.items()

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

Os valores destas tuplas são exatamente as chaves (primeiro item) e os valores (segundo item) do nosso dicionário dados.

Note que quando iteramos em cada item deste objeto recebemos como resposta justamente as tuplas com as chaves e os valores do nosso dicionário.

for dado in dados.items():
    print(dado)

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

Quando declaramos duas variáveis no laço for estamos pedindo para que os itens das tuplas sejam atribuídos a estas variáveis na ordem em que eles aparecem.

No código abaixo a variável chave vai assumir os valores 'A', 'B' e 'C'. Já a variável valor vai assumir os valores 1, 2 e 3.

for chave, valor in dados.items():
    print(f'A chave {chave} tem o valor {valor}')

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

O seu código de exemplo tem uma condição em uma destas variáveis para poder printar o valor da outra.

for chave, valor in dados.items():
    if (valor > 1):
        print(chave)

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

Espero ter ajudado

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