Introducción

Los errores son inevitables, pero Python ofrece una forma elegante de prevenir que tu programa se detenga cuando ocurren. Con las excepciones, puedes detectar y manejar los errores sin interrumpir la ejecución del código.

¿Qué es una excepción?

Una excepción es un evento que ocurre durante la ejecución del programa y que interrumpe el flujo normal si no se maneja. Por ejemplo:

Si el usuario ingresa 0, el programa mostrará:

Estructura básica del manejo de excepciones

Salida posible:

  • Try intenta ejecutar el código.
  • Except captura errores específicos.
  • Finally se ejecuta siempre, haya o no error.

Crear tus propias excepciones

También puedes definir tus propias excepciones para controlar errores personalizados:

Condición que genera la excepción

  • La palabra clave raise lanza una excepción manualmente.
  • En este caso, se lanza una excepción del tipo ValueError con un mensaje personalizado.
  • Esto detiene la ejecución normal del programa y envía el control al bloque except.

Bloque else

Si la condición no se cumple (es decir, la edad es mayor o igual a 18), el programa continúa normalmente.

Bloque try

  • Aquí se intenta ejecutar la función.
  • Si ocurre una excepción dentro de verificar_edad, Python salta inmediatamente al bloque except.

Bloque except

  • Captura la excepción lanzada.
  • La variable error contiene el mensaje que se pasó al raise.
  • En este caso, imprime:

Resultado final

El programa no se detiene por el error, sino que lo maneja de forma controlada, mostrando un mensaje claro al usuario. Esto es útil para validar datos, controlar flujos y evitar que el programa se cierre inesperadamente.

Conclusión

El manejo de excepciones te permite crear programas más robustos y confiables. En lugar de que el código se detenga ante un error, puedes controlar la situación y ofrecer soluciones al usuario.

Llamada a la acción:

Crea un programa que pida un número y maneje los errores de división por cero y entrada inválida. ¡Así dominarás el uso de try, except y finally!


Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *