Como tratar exceções com try e except em Python
Erros podem ocorrer durante a execução de um programa. Para evitar que o código falhe inesperadamente, Python permite o tratamento de exceções com try
e except
.
Estrutura básica do try e except
O bloco try
contém o código que pode gerar uma exceção, enquanto except
trata o erro caso ele ocorra:
try:
numero = int(input("Digite um número: "))
print(f"O número digitado foi {numero}")
except ValueError:
print("Erro: Você deve digitar um número válido!")
Capturando múltiplas exceções
Podemos capturar diferentes tipos de exceções separadamente:
try:
resultado = 10 / int(input("Digite um número: "))
except ZeroDivisionError:
print("Erro: Divisão por zero não é permitida!")
except ValueError:
print("Erro: Entrada inválida! Digite um número.")
Usando else e finally
Podemos utilizar else
para código que deve ser executado caso não haja erro e finally
para trechos que sempre serão executados:
try:
arquivo = open("dados.txt", "r")
conteudo = arquivo.read()
print(conteudo)
except FileNotFoundError:
print("Erro: Arquivo não encontrado.")
finally:
print("Encerrando execução.")
Por que o tratamento de exceções é essencial em Python?
O tratamento de exceções é fundamental para tornar programas mais robustos e evitar falhas inesperadas. Com try
e except
, podemos capturar erros e agir corretamente para garantir que o código continue funcionando. Além disso, else
e finally
proporcionam ainda mais controle sobre a execução, tornando o fluxo do programa mais seguro.
Algumas aplicações:
- Prevenção de falhas inesperadas ao processar entradas do usuário.
- Tratamento de erros ao lidar com arquivos ou conexões externas.
- Melhoria na confiabilidade de programas em produção.
- Garante que recursos, como arquivos e conexões, sejam sempre fechados corretamente.
Dicas para quem está começando
- Sempre use
try
eexcept
ao lidar com entradas do usuário. - Evite capturar exceções genéricas, especifique os erros que deseja tratar.
- Utilize
finally
para ações que devem sempre ser executadas. - Teste diferentes cenários para garantir que seu tratamento de exceções funciona corretamente.
- Considere logging para registrar erros e facilitar a depuração.
Contribuições de Laura Mendes