// aula 04 · Python · Fundamentos

Laços de
Repetição


Por que laços existem?

🔁 Automatizando repetições

O Guanabara mostra que laços são a forma do programa repetir tarefas sem você escrever o mesmo código várias vezes. Em vez de escrever 100 print(), você usa um laço que repete uma vez.

for — repetição com contagem definida

for Percorre uma sequência

O for é usado quando você sabe quantas vezes quer repetir ou quando quer percorrer cada item de uma lista. A variável de controle assume cada valor da sequência.

for variavel in sequencia:
    # código que repete

A função range() — gerando sequências de números

range(5) → 0 até 4

01234

range(1, 6) → 1 até 5

12345

range(0, 10, 2) → pares

02468
# range(início, fim, passo)

for i in range(5):
    print(i)
# 0 1 2 3 4

for i in range(1, 11):
    print(i)
# 1 2 3 ... 10
# Somando números de 1 a 100
soma = 0
for n in range(1, 101):
    soma += n
print(f"Soma de 1 a 100: {soma}")  # → 5050

# Percorrendo uma lista
frutas = ["maçã", "banana", "uva"]
for fruta in frutas:
    print(f"Eu gosto de {fruta}")

while — repete enquanto a condição for verdadeira

while Condição indefinida

O while é ideal quando você não sabe quantas repetições vai precisar — depende de uma condição que pode mudar. Atenção: se a condição nunca mudar para False, o loop nunca para (loop infinito!).

while condição:
    # código que repete enquanto True
# Contador simples
contador = 1
while contador <= 5:
    print(f"Contagem: {contador}")
    contador += 1   # ESSENCIAL — sem isso: loop infinito!

# Validando entrada do usuário
senha = ""
while senha != "1234":
    senha = input("Digite a senha: ")
print("Acesso liberado!")

break, continue e else

break

Interrompe o laço imediatamente, mesmo que a condição ainda seja verdadeira. "Para tudo agora!"

for i in range(10):
    if i == 5:
        break
    print(i)
# → 0 1 2 3 4
continue

Pula o restante da iteração atual e vai para a próxima. "Ignora esse, vai pro próximo!"

for i in range(6):
    if i == 3:
        continue
    print(i)
# → 0 1 2 4 5
# break — encontrar um número numa lista
numeros = [3, 7, 2, 9, 1, 5]
for n in numeros:
    if n == 9:
        print(f"Encontrei o 9!")
        break

# continue — pular os ímpares
for i in range(10):
    if i % 2 != 0:
        continue
    print(i)  # → 0 2 4 6 8

for vs while — quando usar cada um?

🔵 for
🟡 while
Sei quantas vezes vou repetir
Não sei quantas vezes vai repetir
Percorrer listas, tuplas, strings
Aguardar uma ação do usuário
Somar os 100 primeiros números
Repetir até a senha estar correta
Tabuada do 1 ao 10
Continuar enquanto o saldo for positivo