Using the dictionary structure with for loops is incredibly efficient in python. Neste cartão, vou mostrar alguns exemplos de maneiras de usar dicionários em loops.
o primeiro exemplo que vou cobrir é expandir um dicionário em uma lista de listas. Vamos imaginar que você tem um dicionário onde a chave é o produto, e o valor é o número do produto em estoque., Abaixo está um exemplo de como eu quero mudar minha estrutura de dados:
- Introdução:
fruits = {'banana':3,'apple':2, 'mango':1, 'kiwi':5}
- Saída:
fruits_list = , , , ]
Para conseguir isso, podemos começar com a gravação dos passos para uma solução.
precisamos iterar todas as teclas de frutas e construir uma lista repetindo a chave N=value
vezes.vou fazer isto usando a compreensão da lista.,
- Para iterar sobre todos os dict itens que você vai precisar de
fruits.items()
- Para criar uma lista de repetição de cada chave N vezes:
*N
- Como dict valores indicam quantas vezes repetir, de fazer:
*value
eu posso escrever isso como um loop for e, em seguida, convertê-lo para compreensão lista que eu acho que é mais intuitiva. Abaixo está o código como um laço para:
agora nós poderíamos fazer a mesma coisa com uma compreensão da lista. A compreensão da lista é o ato de colocar um laço for em uma lista., Isto pode parecer um pouco estranho, mas os criadores do python perceberam que era comum o suficiente para usar um laço for para criar uma lista que era importante criar um atalho.
a compreensão da lista é difícil no início, porque parece não natural, mas quanto mais você codifica em python, mais você vai encontrar os benefícios adicionados de usar a compreensão da lista. Apenas lembre-se: tudo o que você faz com a compreensão da lista pode ser feito com um laço for. Mas o inverso não é verdade.,
Sintaxe de Compreensão Lista
variable =
Você também pode adicionar uma instrução condicional em uma lista de compreensão:
variable =
Então, como isso se aplica para o problema acima? Bem, abaixo eu mostro como podemos usar este novo formato para nos ajudar!
iremos explorar mais compreensão da lista no futuro, por isso, por agora certifique-se apenas de que compreende como estamos a usar o dictionary.items()
método
Deixe uma resposta