Python es un lenguaje de programación cada vez más extendido y más utilizado, entre otras cosas, porque su código es abierto y porque, se supone, que es fácil de utilizar. ¡Pero hay que saber! También tener algunas nociones básicas, como qué son las funciones Python, o qué hacer cuando se produce un error.

Y esto último es, precisamente, lo que nos ocupa ahora. Porque las excepciones en Python se producen cuando hay un error en el funcionamiento normal del programa. Y tan importante es saber cómo funciona, como saber qué hacer cuando deja de hacerlo correctamente. ¿No crees?

Vamos a ver un par de ejemplos para que se entienda mejor antes de seguir:

  • Ejemplo 1: si el programa intenta dividir un número entre cero, dará error.
  • Ejemplo 2: si en una lista de frutas, introduces como término de búsqueda un número, dará error igualmente.
Los mejores profes de Python que están disponibles
Jose
5
5 (5 opiniones)
Jose
₡5500
/h
Gift icon
¡1a clase gratis!
Jacob
5
5 (5 opiniones)
Jacob
₡5000
/h
Gift icon
¡1a clase gratis!
Dylan
5
5 (7 opiniones)
Dylan
₡5000
/h
Gift icon
¡1a clase gratis!
Emmanuel ramiro
5
5 (9 opiniones)
Emmanuel ramiro
₡5000
/h
Gift icon
¡1a clase gratis!
Karla
5
5 (3 opiniones)
Karla
₡5500
/h
Gift icon
¡1a clase gratis!
Jherom
5
5 (1 opiniones)
Jherom
₡10000
/h
Gift icon
¡1a clase gratis!
Diego
5
5 (1 opiniones)
Diego
₡7000
/h
Gift icon
¡1a clase gratis!
Luis miguel
5
5 (1 opiniones)
Luis miguel
₡6800
/h
Gift icon
¡1a clase gratis!
Jose
5
5 (5 opiniones)
Jose
₡5500
/h
Gift icon
¡1a clase gratis!
Jacob
5
5 (5 opiniones)
Jacob
₡5000
/h
Gift icon
¡1a clase gratis!
Dylan
5
5 (7 opiniones)
Dylan
₡5000
/h
Gift icon
¡1a clase gratis!
Emmanuel ramiro
5
5 (9 opiniones)
Emmanuel ramiro
₡5000
/h
Gift icon
¡1a clase gratis!
Karla
5
5 (3 opiniones)
Karla
₡5500
/h
Gift icon
¡1a clase gratis!
Jherom
5
5 (1 opiniones)
Jherom
₡10000
/h
Gift icon
¡1a clase gratis!
Diego
5
5 (1 opiniones)
Diego
₡7000
/h
Gift icon
¡1a clase gratis!
Luis miguel
5
5 (1 opiniones)
Luis miguel
₡6800
/h
Gift icon
¡1a clase gratis!
Vamos

Errores y excepciones en Python

Los errores en Python se dividen en dos categorías, los de sintaxis y las excepciones. ¡Vamos a ver en qué se diferencian!

Errores de sintaxis

Los errores de sintaxis suceden cuando el código no sigue la estructura correcta.

Excepciones

Son errores en el tiempo de ejecución que pueden ser manejados con try except.

Ya que tenemos una primera noción, vamos a continuar profundizando. No desesperes, te daremos ejemplos de cada paso que demos.

👆 Pero antes: ¿sabes qué es un diccionario de Python y para qué sirve? Es uno de los puntos más interesantes a tener en cuenta si quieres profundizar en este lenguaje de programación.

Errores de sintaxis en Python

Un error de sintaxis ocurre cuando el código no sigue la gramática de Python.

🚨 Ejemplo de error de sintaxis:

Fragmento de código que muestra un error de Python que indica que falta un paréntesis de cierre en una sentencia print.

Solución: asegurar que el código esté correctamente escrito antes de ejecutarlo. En este caso, olvidar algo como un paréntesis puede hacer que el programa deje de funcionar correctamente.

Excepciones en Python: qué son y cómo funcionan

Por su parte, las excepciones en Python ocurren cuando el intérprete encuentra un problema durante la ejecución.

🚨 Ejemplo de excepción común: como comentábamos en los ejemplos de más arriba, dividir un número entre cero dará error, como en este ejemplo. ¿Qué se puede hacer en este caso?

Fragmento de código que muestra un error de división por cero: «resultado = 10 / 0 # Error: división por cero» sobre un fondo oscuro.

Solución: en estos casos se utiliza try except. ¡Sigue leyendo para saber cómo se hace!

👆 Te interesa: ¿quieres saber qué son los bucles en Python para manejar grandes cantidades de datos? También agilizan la labor de programar, ya que permiten desarrollar de forma automática algunas tareas, para no tener que repetirlas una y otra vez...

code
¿Qué significa != 0 en Python?

!= 0 en Python significa que no es igual a cero. La sintaxtis != es un operador que indica que no es igual, al añadirle un número, se especifica que algo no es igual a ese número, en este caso a cero.

Cómo manejar excepciones en Python con ‘try except’

Para manejar excepciones en Python se utiliza try except, que sirve para controlar los errores y que el programa no falle o se detengan cuando estos ocurren.

  • Ejemplo básico de try except en Python:
Fragmento de código que ilustra el tratamiento de errores en Python para un error de división por cero, con un mensaje en español indicando el error.

En este caso, para evitar que se produzca el error, se especifica, a través de "except" que no se puede dividir por cero.

  • Capturar múltiples excepciones:
Fragmento de código que demuestra la gestión de errores en Python para convertir texto en un número entero, indicando las posibles excepciones con un mensaje.

En este caso, además de lanzar ZeroDivisionError, si se pone cero, se añade ValueError en el caso de que el error sea, por ejemplo, poner una letra.

  • Uso de else y finally en try except:

En este caso else se ejecuta si no hay excepción y finally se ejecuta siempre, haya error o no.

Fragmento de código que muestra un bloque try-except de Python para manejar la conversión de enteros con mensajes de éxito y error en español.

🤔 ¿Sabes qué es la POO en Python? La también llamada Programación Orientada a Objetos en Python sirve para que puedas ordenar tu código, y también es uno de los puntos básicos para empezar a aprender.

Los mejores profes de Python que están disponibles
Jose
5
5 (5 opiniones)
Jose
₡5500
/h
Gift icon
¡1a clase gratis!
Jacob
5
5 (5 opiniones)
Jacob
₡5000
/h
Gift icon
¡1a clase gratis!
Dylan
5
5 (7 opiniones)
Dylan
₡5000
/h
Gift icon
¡1a clase gratis!
Emmanuel ramiro
5
5 (9 opiniones)
Emmanuel ramiro
₡5000
/h
Gift icon
¡1a clase gratis!
Karla
5
5 (3 opiniones)
Karla
₡5500
/h
Gift icon
¡1a clase gratis!
Jherom
5
5 (1 opiniones)
Jherom
₡10000
/h
Gift icon
¡1a clase gratis!
Diego
5
5 (1 opiniones)
Diego
₡7000
/h
Gift icon
¡1a clase gratis!
Luis miguel
5
5 (1 opiniones)
Luis miguel
₡6800
/h
Gift icon
¡1a clase gratis!
Jose
5
5 (5 opiniones)
Jose
₡5500
/h
Gift icon
¡1a clase gratis!
Jacob
5
5 (5 opiniones)
Jacob
₡5000
/h
Gift icon
¡1a clase gratis!
Dylan
5
5 (7 opiniones)
Dylan
₡5000
/h
Gift icon
¡1a clase gratis!
Emmanuel ramiro
5
5 (9 opiniones)
Emmanuel ramiro
₡5000
/h
Gift icon
¡1a clase gratis!
Karla
5
5 (3 opiniones)
Karla
₡5500
/h
Gift icon
¡1a clase gratis!
Jherom
5
5 (1 opiniones)
Jherom
₡10000
/h
Gift icon
¡1a clase gratis!
Diego
5
5 (1 opiniones)
Diego
₡7000
/h
Gift icon
¡1a clase gratis!
Luis miguel
5
5 (1 opiniones)
Luis miguel
₡6800
/h
Gift icon
¡1a clase gratis!
Vamos

Cómo lanzar excepciones en Python con raise

Podemos forzar una excepción con raise, para que la persona que está programando decida un supuesto con el que se detiene el programa.

🚨 Ejemplo:

Fragmento de código que define una función para verificar la edad, permitiendo el acceso a mayores de 18 años y lanzando una excepción para usuarios más jóvenes.

En el caso de este ejemplo, sería que el programa se detenga en un verificador de edad cuando la persona sea menor de 18 años.

Encadenamiento de excepciones en Python

Podemos encadenar excepciones usando raise from, para plasmar varias excepciones seguidas.

Fragmento de código que demuestra la gestión de errores en Python, lanzando un ValueError y volviéndolo a lanzar como un RuntimeError.

Cómo definir excepciones personalizadas en Python

También es posible crear nuestras propias excepciones heredando de "Exception". Esto es útil para personalizar tu código, y para poder anticipar posibles errores.

Fragmento de código que muestra una clase de excepción personalizada en Python, demostrando la gestión de errores con un mensaje de error personalizado.

Cómo limpiar recursos con finally y with

  • Uso de finally para liberar recursos: esto se refiere a dejar de usar algunos recursos para que el sistema funcione de forma óptima, sería por ejemplo, cerrar los archivos que no se estén utilizando.
Fragmento de código que demuestra el manejo de archivos en Python con try-except para la gestión de errores y una cláusula finally para asegurar el cierre del archivo.
  • Uso de with para manejar archivos:
Fragmento de código Python para abrir y leer un archivo de texto llamado «archivo.txt». Sintaxis resaltada sobre fondo oscuro.

✅ Al usar with para abrir los archivos nos aseguramos de que el archivo se cierra correctamente y, aunque suceda algún error, el archivo se cerrará igualmente.

Gestión de múltiples excepciones no relacionadas

En Python también podemos manejar múltiples excepciones que no están relacionadas entre sí en un mismo bloque except. Se hace utilizando varios bloques except dentro de un bloque try. Uno para explicar cada variante de error que queremos encadenar.

Fragmento de código que demuestra la gestión de errores en Python, con excepciones para ZeroDivisionError y ValueError.

El manejo de las excepciones en Python es uno de los puntos importantes, ya que conocer estas reglas evitará que se produzcan errores en el programa, como se producen también si se usan las nomenclaturas ilegales en Python. También los puedes prevenir y solucionar, si es que acontecen, así es que es un punto clave.

add
¿Qué variables son ilegales en Python?

Una variable ilegal en Python se refiere a nombres en Python que no se pueden usar porque no cumplen con las normas del lenguaje de Python y que, de usarlos, podrían provocar un error. Son, por ejemplo, las que contienen espacios, cuando empiezan por un número, si son iguales a las palabras especiales de Python, que están reservadas por el propio programa, etc.

🤔 ¿Qué hacer para manejar las excepciones correctamente? Algunas de las recomendaciones para ello más importantes son, en primer lugar, comprender bien qué son y cómo se usan, como hemos visto a lo largo de este artículo. También usar siempre try except para evitar errores inesperados, definir excepciones personalizadas para mejorar la depuración de tu código, utilizar finally y with para liberar recursos, como también hemos visto más arriba.

Si ya tienes un cierto manejo, también es recomendable que lances tus propias excepciones, ya que serás la persona que mejor conoce su código y tendrá la capacidad de detectar y prevenir los errores, adelantándose a ellos.

Y recuerda que, la mejor manera de solucionar los errores es, precisamente, anticiparse a ellos. Por eso, ten en cuenta cuáles son los errores más comunes y verifica que no se dan en tu código; cuando generes excepciones, hazlo de la manera más clara y concisa posible; haz pruebas, cometiendo errores intencionadamente para ver la manera de solucionarlos, y practica, practica y practica, ¡es la mejor manera de aprender aunque te equivoques!

¿Te gustó este artículo? ¡Califícalo!

5,00 (1 rating(s))
Loading...

Asun

Traductora y experta SEO. Un buen libro, el sonido del mar, la música en directo, el cine, pintar y escalar son mis pequeños placeres.