Nessa parte do código:
acertos = [d for d in diferencas if d == 0]
Pq é necessário o primeiro "d", antes do for ?
Nessa parte do código:
acertos = [d for d in diferencas if d == 0]
Pq é necessário o primeiro "d", antes do for ?
Olá Gustavo, é a sintaxe da linguagem e uma forma de construir listas de um maneira mais concisa - é chamado de list comprehensions. O primeiro d
especifica uma expressão seguida de um bloco for e nenhuma ou algumas cláusulas. A expressão pode ser qualquer coisa. Neste exemplo, é apenas o objeto contido em diferencas
, ou seja, você quer todo objeto d
para cada d
dentro de diferencas
se d
for igual a zero:
acertos = [d for d in diferencas if d == 0]
Mas nem sempre você vai usar dessa maneira, imagine uma lista de pessoas em que cada pessoa (com nome
e idade
) é representada por um dicionário:
pessoas = [{'nome': 'carlos', 'idade': 25}, {'nome': 'pedro', 'idade': 32, 'nome': 'julia', 'idade': 27}]
Agora imagine que você deseja construir uma lista apenas com os nomes dessas pessoas. Você pode usar list comprehensions para essa tarefa. Você vai usar uma expressão diferente, assim:
nomes = [p['nome'] for p in pessoas]
Espero ter ajudado e bons estudos!