Ciclos em Python: como funcionam os loops For e While e como fazê-los

Última atualização
20 ago 2023
Tempo de leitura
7 min
Ciclos em Python

Neste artigo você vai aprender o essencial sobre os loops For e While em Python, como eles funcionam e para que servem.

Python para Análise de Dados

Economize R$320 na compra do seu curso. Use o código copied blog2025 e comece a aprender!

Aprenda uma das linguagens de programação mais versáteis e acessíveis da área de analytics e manuseie, de forma automatizada, grandes quantidades de dados. Com esta ferramenta poderosa você irá agilizar seu trabalho, integrar seus sistemas e processar dados mais rapidamente e em diferentes formatos.

2 meses
12x de
R$ 145,00
(parcelas sem juros no cartão de crédito)
Investimento pelo curso completo
R$ 1.740
R$ 2.900
Inscreva-se no curso

Geralmente, o código em Python é executado de forma sequencial, ou seja, começa com a primeira linha, passa para a segunda e assim por diante. No entanto, há casos em que um trecho de código precisa ser repetido. O Python tem ferramentas chamadas loops para facilitar essa tarefa. Os loops permitem que você altere o fluxo linear do programa para repetir uma parte do código quantas vezes forem necessárias.

O que são loops em Python?

Primeiro, vamos esclarecer o termo iterar, que significa “executar uma ação várias vezes”, e cada repetição é chamada de iteração. Os loops servem para que os programas implementem iterações, ou seja, executem o mesmo bloco de código duas ou mais vezes enquanto a condição declarada é completada. Quando a condição se torna falsa, o programa sai do loop e continua a ser executado de forma sequencial.

O que são loops em Python

Fonte: Freepik

O fluxo de execução é o seguinte:

  1. Avalia a condição, definindo se ela é verdadeira ou falsa (True ou False).
  2. Se a condição for verdadeira, executa o corpo e retorna à etapa 1.
  3. Se a condição for falsa, sai do loop e continua para a próxima instrução.

Python conta com dois tipos fundamentais de loops:

  • While, aqueles que têm um número indefinido de iterações,
  • For, aqueles que têm um número definido de iterações.

Loop while

Uma forma de iteração em Python é a instrução while, que permite repetir a execução de um bloco de código, sempre que a condição do loop seja verdadeira.

A sintaxe é muito simples:

while <condição>:
<bloco de código>

O código no corpo do loop deve alterar uma ou mais variáveis até que a condição resulte falsa e o loop termine. Neste exemplo, a variável de iteração altera o valor do parâmetro cada vez que o ciclo é executado e controla quando finaliza o ciclo.

x = 5
while x > 0:
x -= 1
print(x)
print('PUM!')
4
3
2
1
0
Pum!

Em Python pode-se indicar uma operação alternativa pela instrução else no final do loop while. O trecho de código dentro de else será executado quando a condição de loop não retornar mais True, ou seja, até que a condição de loop não seja mais completada.

x = 5
while x > 0:
x -= 1
print(x)
else:
print('Fim do loop')
4
3
2
1
0
Fim do loop

Se não há nenhuma variável de iteração que determine quantas vezes é preciso executar um loop e a condição permanecer verdadeira, a mesma parte do código se repetirá para sempre, resultando em um loop infinito. Normalmente, loops infinitos se devem a erros e devem ser evitados para não perder o controle do programa.

x = 5
while x > 0:
print('Ao infinito e além!')
Ao infinito e além!
Ao infinito e além!
Ao infinito e além!
…

Fonte: Unsplash

Loop For

A instrução for forma um loop definido que percorre os elementos de uma coleção de dados ou uma sequência ordenada, como listas, dicionários, tuplas, strings, etc. O loop fará tantas iterações quantos elementos existirem na sequência.

O loop for em Python tem a seguinte sintaxe:

for <variable> in <sequência>:
<bloco de código>

Por exemplo, para iterar os elementos da lista “idiomas” com um loop for é designado “idioma” a uma variável que representará os elementos da lista em cada repetição.

O loop for em Python tem a seguinte sintaxe:

idiomas = ['Árabe', 'Inglês', 'Francês', 'Espanhol']
índice = 0
for idioma in idiomas:
print ('Este idioma está na lista: ' + idiomas[índice])
índice += 1
Este idioma está na lista: Árabe
Este idioma está na lista: Inglês
Este idioma está na lista: Francês
Este idioma está na lista: Espanhol

O loop for com cadeias tipo string funciona da mesma forma, mas com caracteres no lugar dos elementos:

cadeia = 'Python'
for caractere em cadeia:
print(caractere)
P
y
t
h
o
n

Assim como no loop while, pode ser usada a instrução else para acrescentar uma ação adicional ao finalizar o loop. Veja um exemplo com a função range():

for x in range(5):
print(x)
else:
print('Fim do loop')
0
1
2
3
4
Fim do loop

Loops aninhados

O Python permite aninhar loops colocando um dentro do outro. Isso pode ser útil para resolver problemas mais complexos: por exemplo, se você quiser iterar algum objeto em que cada elemento tenha outra classe iterável, como uma lista de listas.

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

Para acessar cada elemento individualmente, você pode aninhar dois loops for. O primeiro será responsável por iterar as listas aninhadas, e o outro, seus elementos.

for a in lista:
for b in a:
print(b)
1
2
3
4
5
6
7
8
9

Da mesma forma, você pode aninhar um loop while. Por exemplo, pode ajudá-lo se você quiser gerar todas as combinações possíveis de dois números:

a = 0
b = 0
while a < 3:
while b < 3:
print(a,b)
b += 1
a += 1
b = 0
0 0
0 1
0 2
1 0
1 1
1 2
2 0
2 1
2 2

Como os loops são controlados em Python?

Fonte: Burst

Usando certas instruções, você pode interromper o fluxo de execução de um loop, se necessário. A instrução break “quebra” o loop a qualquer momento, mesmo quando a condição segue sendo verdadeira. No exemplo a seguir, o loop for percorre todos os números no intervalo de 0 a 4, mas o programa termina quando o número é definido como 3:

for x in range(5):
if x == 3:
break
print (x)
0
1
2

O mesmo acontece com o loop while: ao receber uma entrada determinada, o programa sai do loop e avança para a próxima linha de código:

while True:
resposta = input('> ')
if resposta == 'sair':
break
else:
print(resposta)
print ('Tchau!')
> Oi!
Oi!
> Como vai?
Como vai?
> sair
Tchau!

A instrução continue termina a iteração atual independentemente do código abaixo dela e retorna ao início do loop.

x = 0
while x < 5:
x += 1
if x == 3:
continue
print(x)
1
2
4
5

No exemplo abaixo, quando o valor atingir ‘y’, o programa voltará para o loop for sem executar a última linha de print e sem sair do loop:

for caráter in 'Python': 
if caractere == 'y':
continue
print ('A letra é:', caractere)
A letra é: P
A letra é: t
A letra é: h
A letra é: o
A letra é: n

Por fim, é preciso mencionar a instrução pass. Quando a execução de um loop atinge a instrução pass, ela simplesmente se move para a próxima instrução sem modificar o fluxo estabelecido. Normalmente, ele é usado para reservar espaço, se no momento de escrever um código houver uma parte que ainda não está concluída:

for x in range(1, 5):
if x == 2:
pass
print (x)
1
2
3
4

Para aprender mais e dominar a linguagem Python em nível profissional, a EBAC oferece o curso online Python para Análise de Dados. Em apenas 2 meses, você vai começar a programar do zero, aprendendo a gerenciar listas e estruturas de dados, bem como a visualizar e a publicar sua análise de dados. Você terá atividades práticas, no seu ritmo, de qualquer lugar, com feedback individualizado de um tutor. Poderá aplicar seu aprendizado em um projeto profissional, que vai enriquecer seu portfólio. Ao final do curso, você vai receber um certificado e acesso vitalício à plataforma.

Fica ligado: a EBAC realiza webinars semanais que são abertos ao público e são gratuitos. Os eventos contemplam diversas áreas, inclusive a de Programação & Data. Aproveite para enriquecer os seus conhecimentos. Confira os eventos que já aconteceram e aproveite para se inscrever nos próximos!

Página inicial / Programação & Data
Equipe EBAC

O conteúdo

Python para Análise de Dados

Economize R$320 na compra do seu curso. Use o código copied blog2025 e comece a aprender!

Aprenda uma das linguagens de programação mais versáteis e acessíveis da área de analytics e manuseie, de forma automatizada, grandes quantidades de dados. Com esta ferramenta poderosa você irá agilizar seu trabalho, integrar seus sistemas e processar dados mais rapidamente e em diferentes formatos.

2 meses
12x de
R$ 145,00
(parcelas sem juros no cartão de crédito)
Investimento pelo curso completo
R$ 1.740
R$ 2.900
Inscreva-se no curso
Cadastre-se Cadastre-se Cadastre-se Cadastre-se Cadastre-se

Artigos Relacionados

Kotlin vs Java: Qual é a diferença?

Se você está começando no mundo da programação para Android ou quer entender qual linguagem escolher para os seus projetos, provavelmente já se perguntou: Kotlin ou Java? Ambas são usadas no desenvolvimento para a plataforma Android, mas possuem diferenças importantes que afetam a produtividade, segurança e desempenho. Vamos entender estas diferenças para que você possa tomar a melhor decisão.

05 maio 2025
14 min
WordPress: O que é e como funciona — Um guia completo

Se você acha que WordPress é só para blogs amadores, prepare-se para mudar de ideia. Esta plataforma é a base de milhões de sites no mundo – de pequenos negócios a gigantes como Sony e The New Yorker. Neste artigo, você vai entender como o WordPress funciona, o que é possível criar com ele e por que tantas empresas confiam nessa tecnologia. Vamos explorar seus recursos, plugins essenciais e até exemplos de sites famosos que usam esta ferramenta. Se você quer construir um site profissional, rápido e funcional, este guia vai te mostrar como.

05 maio 2025
13 min
Como Aprender a Programar e Conseguir um Emprego como Programador?

Você já pensou em trabalhar em qualquer lugar do mundo, ganhar um bom salário e ter uma carreira com alta demanda? A programação oferece tudo isto e muito mais. Com a tecnologia evoluindo a cada dia, empresas de todos os setores precisam de profissionais que saibam desenvolver softwares, sites e aplicativos. Mas por onde começar? Como aprender a programar e conseguir um emprego? Neste guia, vamos mostrar o que faz um programador, onde ele pode trabalhar e como ingressar nessa área promissora.

05 maio 2025
7 min
O que é Regressão Logística?

Imagine que você precisa prever se um cliente comprará um produto, se um paciente tem risco de desenvolver uma doença ou se um e-mail é spam. Como transformar dados em respostas objetivas? A regressão logística faz exatamente isto. Ela não apenas fornece previsões, mas atribui probabilidades a cada resultado, tornando a tomada de decisão mais precisa. Neste artigo, você vai entender como esse modelo funciona, as suas aplicações práticas em diferentes setores e como analisá-lo corretamente.

05 maio 2025
15 min
Pandas em Python: O que é e como usar a biblioteca

Você já se pegou tentando organizar ou analisar grandes volumes de dados e se sentiu perdido em meio a tabelas e cálculos? Se sim, então o Pandas é a ferramenta que você precisa! Como uma das bibliotecas mais poderosas do Python, o Pandas torna a manipulação de dados simples, rápida e intuitiva. Seja você um iniciante tentando organizar as suas informações ou um especialista buscando otimizar processos, o Pandas oferece soluções eficazes para trabalhar com dados estruturados. Neste artigo, vamos explorar as suas principais funcionalidades, como usá-lo no seu dia a dia e como ele pode transformar a forma como você lida com dados.

05 maio 2025
7 min
O que é o NumPy em Python e onde ele é utilizado?

Se você trabalha com Python e precisa lidar com números, o NumPy é a ferramenta que vai transformar a sua vida. Ele permite fazer cálculos matemáticos de forma muito mais rápida e eficiente do que as listas comuns do Python. Mas o que exatamente torna o NumPy tão poderoso? Neste artigo, vamos explorar as suas principais funcionalidades e mostrar por que essa biblioteca é indispensável para análise de dados, machine learning, computação gráfica e muito mais. Se você quer entender como otimizar seu código e trabalhar com grandes volumes de informação sem dor de cabeça, continue lendo!

05 maio 2025
6 min