Estruturas de Controle em Python

Estruturas de controle definem o caminho que o programa vai percorrer: se ele vai executar um bloco de código ou não, e quantas vezes vai repetir uma operação. Em Python, isso é feito com condicionais e loops.


Comentários

Antes de entrar nos exemplos, vale lembrar: comentários são ignorados pelo Python e servem para explicar o código.

# Isso é um comentário de linha única

'''
Isso é um comentário
de múltiplas linhas.
'''

Condicionais

if

Executa um bloco de código só se a condição for verdadeira.

valor = float(input("Entre com um valor: "))
if valor > 0:
    print(valor, "é maior do que zero.")

Se valor for menor ou igual a zero, nada acontece.

if / else

Adiciona um caminho alternativo caso a condição seja falsa.

valor = float(input("Entre com um valor: "))
if valor > 0:
    print(valor, "é maior do que zero.")
else:
    print(valor, "é menor ou igual a zero.")

if / elif / else

Quando há mais de duas possibilidades, use elif para checar condições adicionais:

nota = float(input("Digite sua nota: "))

if nota >= 9:
    print("Aprovado com distinção!")
elif nota >= 7:
    print("Aprovado")
elif nota >= 5:
    print("Recuperação")
else:
    print("Reprovado")

O Python testa as condições de cima para baixo e para quando encontra a primeira verdadeira.

Condições compostas

Você pode combinar condições com and e or:

if 10 <= valor <= 20:
    print(valor, "está dentro do intervalo [10, 20].")

if valor < 0 or valor > 30:
    print(valor, "está fora do intervalo [0, 30].")

Loops

while — repete enquanto a condição for verdadeira

Use while quando não sabe com antecedência quantas vezes vai repetir.

indice = 1
while indice <= 10:
    print(indice, end=' ')
    indice += 1
print()

Saída: 1 2 3 4 5 6 7 8 9 10

Cuidado: se a condição nunca se tornar falsa, o loop roda para sempre. Sempre garanta que algo dentro do loop vai mudar o estado da condição.

Exemplo prático — fatorial com while:

num = int(input('Digite um número inteiro positivo: '))
i = 1
fat = 1
while i <= num:
    fat *= i
    i += 1
print('O fatorial de', num, '=', fat)

for — repete um número definido de vezes

Use for quando sabe quantas iterações quer fazer, ou quando quer percorrer uma sequência.

for i in range(1, 11):
    print(i, end=' ')
print()

Saída: 1 2 3 4 5 6 7 8 9 10

range()

range() gera sequências numéricas. Ele aceita até três argumentos: range(início, fim, passo).

range(5)           # 0, 1, 2, 3, 4
range(8, 13)       # 8, 9, 10, 11, 12
range(1, 30, 5)    # 1, 6, 11, 16, 21, 26
range(5, -14, -3)  # 5, 2, -1, -4, -7, -10, -13

O valor de fim nunca é incluído. Passo negativo percorre a sequência de trás para frente.

Exemplo prático — fatorial com for:

num = int(input('Digite um número inteiro positivo: '))
fat = 1
for i in range(1, num + 1):
    fat *= i
print('O fatorial de', num, '=', fat)

Resumo

Estrutura Quando usar
if Executar algo apenas se uma condição for verdadeira
if/else Dois caminhos possíveis
if/elif/else Três ou mais caminhos possíveis
while Repetir enquanto uma condição for verdadeira
for Repetir um número definido de vezes ou percorrer uma sequência