Nivel intermedio•8 min
Manejo de errores en Python — try, except
Cuando algo falla en Python, se lanza una excepción. Con try/except puedes capturarla y reaccionar en lugar de que el programa se rompa.
Lo que aprenderás
try, except, else, finally, tipos de excepciones, raise, excepciones personalizadas
Estructura try / except
El código que puede fallar va en try; si lanza una excepción, se ejecuta el except.
try:
numero = int(input("Dame un número: "))
print(10 / numero)
except ValueError:
print("Eso no es un número")
except ZeroDivisionError:
print("No puedo dividir entre cero")else y finally
else se ejecuta si no hubo excepción. finally se ejecuta siempre, haya excepción o no.
try:
archivo = open("datos.txt")
contenido = archivo.read()
except FileNotFoundError:
print("Archivo no encontrado")
else:
print(f"Leído: {len(contenido)} chars")
finally:
print("Operación terminada")Lanzar excepciones con raise
Usa raise para lanzar tus propias excepciones cuando detectes un estado inválido.
def dividir(a, b):
if b == 0:
raise ValueError("El divisor no puede ser cero")
return a / b
print(dividir(10, 2)) # 5.0
# dividir(10, 0) # ValueErrorPractica ahora mismo
Has leído cómo funciona Errores en Python. Ahora pruébalo: escribe y ejecuta código en el navegador, sin instalar nada.