Junior
O que é o tratamento de exceções em Python?
sobes.tech IA
Resposta da IA
O tratamento de exceções em Python é um mecanismo para capturar e responder a erros ou eventos que interrompem a execução normal do programa.
Utiliza o bloco try...except...finally ou try...except...else...finally.
try:
# Código que pode gerar uma exceção
result = 10 / 0
except ZeroDivisionError:
# Tratamento de uma exceção específica
print("Erro: Divisão por zero!")
except Exception as e:
# Tratamento de qualquer outra exceção
print(f"Ocorreu um erro: {e}")
else:
# Executa se não houve exceções no bloco try
print("Operação bem-sucedida.")
finally:
# Sempre executado, independentemente de exceções
print("Bloco finally executado.")
Componentes principais:
try: Bloco de código onde se espera uma possível exceção.except: Bloco de código que é executado quando ocorre um tipo específico de exceção notry. Pode-se usar múltiplosexceptpara diferentes tipos de exceções.else: (Opcional) Bloco de código que é executado se nenhuma exceção ocorrer notry.finally: (Opcional) Bloco de código que é sempre executado, independentemente de uma exceção ocorrer ou não. Comumente usado para liberar recursos (por exemplo, fechar arquivos).raise: Palavra-chave para lançar explicitamente uma exceção.
def divide(a, b):
if b == 0:
raise ValueError("O divisor não pode ser zero")
return a / b
try:
divide(10, 0)
except ValueError as e:
print(f"Tratamento de exceção personalizada: {e}")
Vantagens:
- Aumenta a confiabilidade do programa.
- Isola o código que pode causar erros.
- Permite separar de forma mais limpa a lógica normal de execução da lógica de tratamento de erros.