Avatar ·

Como funciona o código [i for i in range(51) if i % 2 == 0]?

📁 lista, python, IA

evens_to_50 = [i for i in range(51) if i % 2 == 0]print evens_to_50

Este código gera uma lista de números pares até cinquenta. Mas, como sou novo em programação, alguns pontos não estão claros:

  1. Por que a geração ocorre entre colchetes, se eles geralmente são usados para trabalhar com índices?
  2. O que faz o primeiro i antes do loop for? Por que depois de range(51) não há dois pontos e uma quebra de linha com tabulação?
  3. Onde mais os colchetes podem ser usados?
  4. Nos colchetes, posso escrever quantos if ou for quiser? Quais são as regras?