Pular para o conteúdo principal

Tutorial de laços while em Python

Aprenda como o laço while funciona em Python.
Atualizado 17 de set. de 2026  · 4 min lido

Explorar com IA

ChatGPTClaudePerplexity

O laço while é um pouco parecido com uma declaração if: ele executa o código dentro dele se a condição for verdadeira. Porém, ao contrário do if, o while continua executando o código repetidamente enquanto a condição permanecer verdadeira.

O laço while

O laço while

A sintaxe do laço while é muito parecida com a do if, como você pode ver acima. O while não é o mais comum, mas em alguns casos ele é extremamente útil.

Exemplo

Suponha que você esteja calculando numericamente um modelo com base nos seus dados. Normalmente, isso envolve repetir os mesmos passos até que o erro entre o modelo e os dados fique abaixo de um limite. Quando você consegue reformular o problema como repetir uma ação até que uma condição seja atendida, o while costuma ser a melhor escolha.

No exemplo abaixo, você começa com um erro igual a 50.0. Em seguida, vai escrever um laço while; na parte da condição, colocamos error > 1, para que o laço rode novamente enquanto o erro estiver acima de 1. Dentro do while, você divide o erro por quatro e atualiza a variável de erro. Quando executamos pela primeira vez, obtemos 12.5.

Exemplo

O Python então volta para a condição do while com o novo erro igual a 12.5. A condição novamente será verdadeira e o código é executado.

exemplo

O Python volta mais uma vez para a condição do while e tenta executar o código de novo. Como 3.125 é maior que 1, o cálculo é feito.

Exemplo

Por fim, a nova condição do while fica menor que 1, então o código resulta em erro e não roda.

Este exemplo vai ser útil porque é hora de você construir um laço while por conta própria! Vamos criar um while que implementa um sistema de controle bem básico para um pêndulo invertido. Se houver um desvio da posição perfeitamente vertical, o while vai corrigir esse desvio aos poucos.

Observe que, se o seu while demorar demais para terminar, pode haver um erro. Em especial, lembre-se de indentar corretamente o conteúdo do laço!

Exemplo de erro com while (execução contínua)

Suponha que você comente ou remova as atualizações do valor de erro e execute o script novamente. O erro não será atualizado e a condição será sempre verdadeira. Isso fará com que o while rode para sempre.

Exemplo de erro com while (execução contínua)

Se você cometer esse erro no seu sistema, será necessário interromper o programa Python pressionando as teclas Control + C.

Exemplo

No exemplo abaixo, você vai criar a variável offset com valor inicial 8. Depois, escreverá um laço while que continua executando enquanto offset for diferente de 0.

Dentro do while:

  • Imprima a frase "correcting...".
  • Em seguida, diminua o valor de offset em 1. Você pode fazer isso com offset = offset - 1.
  • Por fim, ainda dentro do laço, imprima offset para ver como ele muda.
Exemplo

Ao executar o programa acima, ele produz o seguinte resultado:

correcting...
7
correcting...
6
correcting...
5
correcting...
4
correcting...
3
correcting...
2
correcting...
1
correcting...
0

Teste você mesmo.

Para saber mais sobre laços while, assista a este vídeo do nosso curso Intermediate Python.

Este conteúdo foi extraído do curso Intermediate Python da DataCamp, por Hugo Bowne-Anderson.

Confira também nosso tutorial de laços em Python e o tutorial Como emular um laço Do-While em Python para continuar aprendendo e praticando laços em Python até dominar o assunto. 

Tópicos
Python

Cursos de Python

Curso

Introdução ao Python

4 h
7M
Domine os fundamentos da análise de dados com Python em quatro horas e explore pacotes populares.
Ver detalhesRight Arrow
Iniciar Curso
Ver maisRight Arrow
Relacionado

Tutorial

Tutorial sobre loops em Python

Um tutorial introdutório completo sobre loops em Python. Aprenda e pratique loops while e for, loops aninhados, as palavras-chave break e continue, a função range e muito mais!
Satyabrata Pal's photo

Satyabrata Pal

15 min

Tutorial

Tutorial sobre loops for em Python

Aprenda a usar loops “for” em Python pra iterar uma sequência ou as linhas e colunas de um DataFrame pandas.
Aditya Sharma's photo

Aditya Sharma

5 min

Tutorial

Tutorial sobre concatenação de strings em Python

Aprenda vários métodos para concatenar strings em Python, com exemplos para ilustrar cada técnica.
DataCamp Team's photo

DataCamp Team

5 min

Tutorial

Instruções IF, ELIF e ELSE em Python

Neste tutorial, você vai aprender só sobre as instruções if else do Python.
Sejal Jaiswal's photo

Sejal Jaiswal

9 min

Tutorial

Funções em Python: como chamar e escrever funções

Descubra como escrever funções em Python reutilizáveis e eficientes. Domine parâmetros, instruções de retorno e temas avançados como funções lambda. Organize melhor seu código com main() e outras boas práticas.
Karlijn Willems's photo

Karlijn Willems

14 min

Tutorial

if…elif…else em Python Tutorial

Aprenda como criar instruções if…elif…else em Python.
DataCamp Team's photo

DataCamp Team

4 min

Ver MaisVer Mais