⏹️ Comando break em Python
O comando break serve para interromper imediatamente a execução de um loop while ou for.
🔢 Exemplo com Números Primos
O código abaixo testa se um número é primo usando o operador % (que retorna o resto da divisão) e o comando break:
>>> n = int(raw_input('Número a testar: '))
Número a testar: 28
>>> for i in range(2, n):
... if n % i == 0: print('Número não primo'); break
...
Número não primo
📌 Funcionamento: O loop verifica se
n é divisível por algum número entre 2 e n-1. Se for divisível (quando n % i == 0), imprime que não é primo e interrompe o loop com break.
💡 Sintaxe Compacta
Quando o bloco de código após os dois pontos é pequeno, podemos escrevê-lo na mesma linha, separando comandos com ponto e vírgula:
if condição: comando1; comando2; comando3
⚠️ Boa Prática: Embora possível, essa sintaxe compacta deve ser usada com moderação para manter a legibilidade do código.
♾️ Interrompendo Loops Infinitos
O comando break é especialmente útil para sair de loops infinitos:
>>> b = 10
>>> while 1:
... b = b - 1
... print(b)
... if b < 7: break
...
9
8
7
6
ℹ️ Sobre
while 1:: Esta construção cria um loop infinito, pois 1 é sempre avaliado como verdadeiro. O break é a única forma de sair desse loop.
🔄 Break em Loops Aninhados
O break interrompe apenas o loop mais interno em que está contido:
for i in range(10): # loop1
print("Loop1:", i)
for j in range(10): # loop2
print(" Loop2:", j)
if j == 2: break # Interrompe apenas loop2
if i == 5: break # Interrompe loop1
⚠️ Escopo do break: Cada
break afeta apenas o loop onde está diretamente contido. Para sair de múltiplos loops aninhados, considere usar flags ou funções.
📊 Comparação com continue
🔁 break vs continue:
break: Interrompe completamente a execução do loopcontinue: Pula para a próxima iteração do loop
💼 Casos de Uso Comuns
- 🔍 Sair de loops quando um item é encontrado
- 🛑 Interromper processamento quando uma condição de erro é detectada
- ⏱️ Implementar timeouts em operações demoradas
- 🎮 Controlar loops em jogos e aplicações interativas
Post a Comment