Entendendo o loop FOR em Python

Introdução à Repetições em Python (For/While)

Os loops (for/while) são fundamentais na programação para repetir tarefas de forma eficiente, economizando tempo e código.

Entendendo a estrutura do FOR

A estrutura de um for loop geralmente segue este formato:

for variavel in sequencia:
    # Código para executar em cada iteração
  1. Inicialização: for inicia o loop.
  2. Variável de loop: variavel representa o item atual na sequência durante cada iteração do loop.
  3. Sequência: sequencia é uma coleção de itens (como uma lista, tupla ou um intervalo) que o loop percorrerá.
  4. Corpo do Loop: O código dentro do loop que executa uma ação para cada item da sequência.
  5. Iteração: Em cada iteração, a variavel assume o valor do próximo item na sequencia.
  6. Conclusão: O loop continua até que todos os itens da sequência sejam percorridos.

Exemplo em Python

No exemplo abaixo, vamos criar um loop de 0 à 4 e usar o print para exibir os valores.
Usamos o range(5) que gera uma lista com 5 items: [0, 1, 2, 3, 4].
Clique no botão RUN para ver os resultados.

for i in range(5): print(i)

Exemplo com lista de numeros

Vamos supor que voce recebe uma lista de numeros positivos e negativos e precisa somar todos eles usando o for. Seguimos o mesmo padrão:

  • Iniciamos o for
  • adicionamos uma variavel que recebera cada numero da lista em cada repetição
  • E adicionamos o fim a lista
  • Dentro do bloco do for, a variavel tem o valor de cada item da lista
lista_transacoes = [ 10, 20, -3, 100, -45, 5 ] total = 0 for numero in lista_transacoes: total = total + numero print("Valor total:", total)

Exemplo com lista de dicionários

Agora vamos deixar o exemplo mais complexo. Vamos supor que você tem uma lista de dicionarios, e cada item tem as chaves: nome, valor.

O loop continua com a mesma estrutura, porem a variavel que recebe cada item dessa lista não sera um numero, mas sim cada dicionario. E para acessar o valor usamos chaves.

lista_transacoes = [ {"nome": "Salario", "valor": 5000 }, {"nome": "Conta de luz", "valor": -150 }, {"nome": "Conta de agua", "valor": -20 }, ] total = 0 for transacao in lista_transacoes: print(f"- {transacao['nome']}: R$ {transacao['valor']}") total = total + transacao['valor'] print("Saldo total:", total)

List Comprehensions

Uma outra possibilidade que o Python oferece é usarmos o List Comprehensions (ou Compreensão de Listas), que seria escrever um loop na mesma linha. Isso nos permite resolver problemas escrevendo pouco código. Mas vale lembrar que não é recomendado fazer loops complexos na mesma linha, pois pode dificultar o entendimento do código. Vamos aos exemplos:

lista_numeros = [ n for n in range(10) ] print(lista_numeros)

Nesse exemplo, basicamente estamos fazendo a mesma coisa que:

lista_numeros = []
for n in range(10):
    lista_numeros.append(n)

print(lista_numeros)

Veja que o comando for n in range(10) permanece o mesmo, o que muda é os colchetes ao redor e o n atrás do for.

O n atrás do for seria a variável temporária n que esta no for n in range(10). E o colchete ao redor seria a lista que estamos criando.

No resumo, estamos atribuindo na variável lista_numeros um loop com range(10) e colocando o valor de n em uma lista.

Adicionando condicional no List Comprehensions

Podemos também adicionar uma condição no list compreensions. Por exemplo, vamos armazenar na variavel pares os numeros pares. Veja como podemos fazer isso:

pares = [ n for n in range(10) if n % 2 == 0 ] print(pares)
4 curtidas