Como Funcionam os Loops em Python

Publicado em: 10/11/2025
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

    Fundamentos
    Foto do Leandro Hirt

    Descubra como criar geradores eficientes com yield no Python

    Você já sentiu que seu computador travou ao tentar processar uma lista gigantesca de dados? Isso acontece porque, por padrão,

    Ler mais

    Tempo de leitura: 9 minutos
    25/02/2026
    Fundamentos
    Foto do Leandro Hirt

    Transforme seu script Python em .exe em 5 minutos

    Você criou um script incrível, automatizou tarefas repetitivas ou desenvolveu uma ferramenta útil, mas agora surge o problema: como compartilhar

    Ler mais

    Tempo de leitura: 10 minutos
    24/02/2026
    Fundamentos
    Foto do Leandro Hirt

    Como gerar e editar planilhas Excel com Python em minutos

    Gerar e editar planilhas Excel com Python em minutos é uma das habilidades mais valiosas para quem busca aumentar a

    Ler mais

    Tempo de leitura: 12 minutos
    23/02/2026
    Fundamentos
    Foto do Leandro Hirt

    Como descompactar arquivos .zip em Python sem erro

    Aprender como descompactar arquivos .zip em Python sem erro é uma das habilidades mais práticas para quem está começando no

    Ler mais

    Tempo de leitura: 10 minutos
    22/02/2026
    Fundamentos
    Foto do Leandro Hirt

    Como criar e usar dataclasses em Python facilmente

    No vasto ecossistema da programação, gerenciar dados em classes pode, muitas vezes, parecer uma tarefa repetitiva e cansativa. Se você

    Ler mais

    Tempo de leitura: 9 minutos
    18/02/2026
    Fundamentos
    Foto do Leandro Hirt

    Entendendo o operador walrus (:=) no Python

    O ecossistema do Python é conhecido por sua simplicidade e legibilidade, mas isso não significa que a linguagem pare de

    Ler mais

    Tempo de leitura: 9 minutos
    18/02/2026