Como Funcionam os Loops em Python

Tempo de leitura: 7 minutos
Símbolo de repetição ao lado do logotipo do Python pensativo, representando o conceito de loops na programação em Python.

Os loops em Python são estruturas fundamentais que permitem repetir um conjunto de instruções várias vezes sem precisar escrever o mesmo código repetidamente. Eles são essenciais para automatizar tarefas, percorrer listas, processar dados e criar programas mais eficientes.

Neste artigo, você vai entender como os loops funcionam no Python, quais são os tipos existentes, como usá-los na prática e quais erros evitar.


O que é um loop em programação?

Um loop é uma estrutura de repetição que executa um bloco de código enquanto uma condição for verdadeira. Ele é usado quando precisamos repetir uma ação várias vezes sem escrever o mesmo código manualmente.

Por exemplo, imagine que você quer imprimir os números de 1 a 10. Em vez de escrever dez comandos print(), você pode usar um loop para fazer isso automaticamente.

Python

for numero in range(1, 11):
    print(numero)
Pronto para executar

Nesse caso, o loop repete a ação de imprimir o número até chegar ao valor final do intervalo.


Tipos de loops em Python

O Python possui dois tipos principais de loops:

  1. Loop for
  2. Loop while

Cada um tem um propósito específico e pode ser mais adequado dependendo do tipo de tarefa.


Loop for: ideal para percorrer coleções

O loop for é usado quando você sabe exatamente quantas vezes deseja repetir uma ação ou quando quer percorrer uma sequência (como uma lista, string ou intervalo de números).

A estrutura básica é:

Python
for variavel in sequencia:
    instruções

Por exemplo, para percorrer uma lista de frutas:

Python

frutas = ["maçã", "banana", "laranja"]
for fruta in frutas:
    print(fruta)
Pronto para executar

O loop percorre cada item da lista e armazena temporariamente o valor em fruta. Assim, o código dentro do bloco é executado uma vez para cada item da lista.


Usando range() com o loop for

A função range() gera uma sequência de números, sendo muito usada com loops for.

Python

for i in range(5):
    print(i)
Pronto para executar

Esse código imprime os números de 0 a 4.
O range() pode receber até três parâmetros: início, fim e passo.

Python

for i in range(2, 10, 2):
    print(i)
Pronto para executar

Isso imprime 2, 4, 6 e 8.


Loop for com strings

Você também pode percorrer cada caractere de uma string:

Python

for letra in "Python":
    print(letra)
Pronto para executar

Essa é uma maneira prática de analisar ou manipular textos.


Loop while: executa até a condição ser falsa

O loop while é usado quando não se sabe exatamente quantas vezes a repetição será feita, mas existe uma condição que determina quando o loop deve parar.

A estrutura é:

while condição:
    instruções

Por exemplo:

Python

contador = 1
while contador <= 5:
    print(contador)
    contador += 1
Pronto para executar

Esse código imprime os números de 1 a 5. O loop continua enquanto contador for menor ou igual a 5.


Cuidado com loops infinitos

Um erro comum é esquecer de atualizar a variável da condição. Isso pode criar um loop infinito, que nunca termina.

Por exemplo:

Python
x = 0
while x < 5:
    print(x)

Como x nunca é incrementado, o loop continuará rodando para sempre.
Sempre verifique se a condição muda dentro do loop.


Estruturas de controle em loops

Dentro dos loops, o Python oferece comandos especiais que controlam o fluxo da repetição. Os principais são break, continue e else.


break: interrompe o loop

O comando break encerra o loop imediatamente, mesmo que a condição ainda seja verdadeira.

Python

for numero in range(10):
    if numero == 5:
        break
    print(numero)
Pronto para executar

O loop será interrompido assim que numero for igual a 5.


continue: pula uma iteração

O comando continue faz o loop pular a iteração atual e continuar com a próxima.

Python

for numero in range(5):
    if numero == 2:
        continue
    print(numero)
Pronto para executar

Esse código ignora o número 2 e imprime os demais.


else com loops

O Python permite usar o else após um loop. O bloco dentro do else é executado somente quando o loop termina naturalmente, sem break.

Python

for numero in range(3):
    print(numero)
else:
    print("Loop concluído!")
Pronto para executar

Se houver um break, o else não será executado.


Loops aninhados

Um loop aninhado é quando há um loop dentro de outro. Isso é útil para percorrer estruturas mais complexas, como listas de listas (matrizes).

Python

matriz = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]

for linha in matriz:
    for numero in linha:
        print(numero)
Pronto para executar

O loop externo percorre cada linha, e o interno percorre cada número dentro da linha.


Boas práticas com loops

Usar loops corretamente melhora a performance e a legibilidade do código. Veja algumas dicas importantes:

  • Prefira o for quando souber quantas repetições serão feitas.
  • Use while apenas quando a repetição depender de uma condição variável.
  • Sempre atualize as variáveis dentro de um while.
  • Evite loops aninhados desnecessários. Eles podem deixar o código lento.
  • Use nomes de variáveis descritivos, como indice, contador ou item.

Exemplos práticos de loops em Python

1. Somando números de uma lista

Python

numeros = [1, 2, 3, 4, 5]
soma = 0

for n in numeros:
    soma += n

print(soma)
Pronto para executar

2. Verificando login com tentativas

Python

senha_correta = "python123"
tentativas = 0

while tentativas < 3:
    senha = input("Digite a senha: ")
    if senha == senha_correta:
        print("Acesso permitido!")
        break
    else:
        print("Senha incorreta.")
        tentativas += 1
Pronto para executar

Loops e listas: uso com compreensão de listas

O Python permite criar listas de forma compacta usando list comprehension, que é basicamente um loop dentro de uma expressão.

Python

quadrados = [x**2 for x in range(5)]
print(quadrados)
Pronto para executar

Essa linha substitui várias linhas de código com um loop tradicional.


Loops e performance

Loops muito grandes podem deixar um programa mais lento. Para evitar isso:

  • Evite cálculos complexos dentro do loop.
  • Sempre que possível, use funções internas do Python (como sum() ou max()) em vez de loops manuais.
  • Prefira estruturas de dados otimizadas, como set() e dict().

Conclusão

Os loops em Python são ferramentas poderosas que permitem automatizar tarefas, percorrer listas e criar algoritmos dinâmicos. Saber quando usar for e while, e aplicar corretamente comandos como break e continue, é essencial para escrever códigos limpos e eficientes.

Ao dominar os loops, você ganha um dos maiores superpoderes da programação em Python: repetir ações sem esforço e com controle total.


Perguntas Frequentes (FAQ)

1. O que é um loop em Python?
É uma estrutura que repete um bloco de código várias vezes.

2. Quais são os tipos de loops no Python?
Existem dois principais: for e while.

3. Quando usar o loop for?
Quando você sabe quantas vezes o código deve repetir.

4. Quando usar o loop while?
Quando a repetição depende de uma condição.

5. O que é um loop infinito?
É quando a condição nunca se torna falsa, e o loop não termina.

6. Como evitar um loop infinito?
Atualize as variáveis dentro do loop e revise as condições.

7. O que faz o comando break?
Interrompe o loop imediatamente.

8. O que faz o comando continue?
Pula a iteração atual e continua com a próxima.

9. É possível usar else com loops?
Sim, ele executa quando o loop termina normalmente.

10. O que são loops aninhados?
São loops dentro de outros loops.

11. Posso usar loops com listas?
Sim, é uma das aplicações mais comuns.

12. O que é list comprehension?
É uma forma compacta de criar listas usando loops.


Compartilhe:

Facebook
WhatsApp
Twitter
LinkedIn

Conteúdo do artigo

    Artigos relacionados

    Ilustração minimalista do logotipo da linguagem de programação Python ao lado do texto REGEX em fundo neutro
    Fundamentos
    Foto do Leandro Hirt

    Regex Python: Tudo Sobre Expressões Regulares

    Se você já tentou encontrar padrões específicos em textos, validar formatos de email ou extrair informações de documentos, provavelmente já

    Ler mais

    Tempo de leitura: 12 minutos
    05/01/2026
    Logo do Python, texto TXT e ícone de bloco de notas representando arquivos de texto
    Fundamentos
    Foto do Leandro Hirt

    Como Ler Arquivos TXT no Python

    Trabalhar com arquivos de texto é uma das tarefas mais comuns na programação. Aprender como ler arquivo TXT no Python

    Ler mais

    Tempo de leitura: 14 minutos
    24/12/2025
    Comparação visual entre Python 2 e Python 3 com ícones minimalistas
    Fundamentos
    Foto do Leandro Hirt

    Python 2 vs Python 3: Principais Diferenças

    Se você está começando a estudar Python ou já trabalha com a linguagem, provavelmente já se deparou com uma dúvida

    Ler mais

    Tempo de leitura: 20 minutos
    22/12/2025
    Pessoa pensando com um monitor desfocado ao fundo
    Fundamentos
    Foto do Leandro Hirt

    Tipos de Dados em Python: int, float, str, list e dict

    Aprenda tudo sobre os principais tipos de dados em Python: int, float, str, list e dict. Guia completo com exemplos

    Ler mais

    Tempo de leitura: 14 minutos
    21/12/2025
    Pessoa usando tablet com caneta digital para planejar tarefas em checklist, representando organização, planejamento e produtividade digital.
    Fundamentos
    Foto do Leandro Hirt

    Como Ordenar Listas no Python (Sort vs Sorted)

    Você já ficou confuso sobre quando usar sort() ou sorted() para organizar suas listas em Python? Não está sozinho. Esses

    Ler mais

    Tempo de leitura: 12 minutos
    20/12/2025
    Logo do Python com uma faca, simbolizando fatiamento
    Fundamentos
    Foto do Leandro Hirt

    Fatiamento em Python: Tudo Sobre Slicing

    O fatiamento (ou slicing) é uma técnica fundamental em Python que permite extrair partes específicas de sequências como listas, strings

    Ler mais

    Tempo de leitura: 11 minutos
    13/12/2025