Ignorar una excepción en Python
-
Utilice la declaración
pass
en el bloqueexcept
en Python -
Utilice la declaración
sys.exc_clear()
en el bloqueexcept
en Python
Una excepción es un evento que, cuando se genera, altera el flujo del programa.
Las excepciones resultan de que el programa es sintácticamente correcto pero sigue dando un error en la ejecución del código. Este error no detiene la ejecución del programa, sino que cambia el flujo predeterminado del programa.
En Python, manejamos excepciones usando el bloque try...except
. Este tutorial discutirá varios métodos para ignorar una excepción y continuar con el código en Python.
Utilice la declaración pass
en el bloque except
en Python
La declaración pass
se puede considerar como un marcador de posición en la programación de Python. Devuelve una declaración NULL
y, por lo tanto, no produce ningún valor. Sin embargo, el intérprete de Python no ignora la declaración de paso y evitamos obtener errores para el código vacío donde se usa la declaración.
Cuando se usa la instrucción pass
en las instrucciones try...except
, simplemente pasa los errores y no altera el flujo del programa Python.
El siguiente código usa la instrucción pass
en el bloque except
para ignorar una excepción y continuar con el código en Python.
try:
print(hey)
except Exception:
pass
print("ignored the exception")
El código anterior proporciona la siguiente salida.
ignored the exception
Aunque esta función siempre funciona en Python 3 y superior, usar la instrucción pass
se considera una mala práctica de programación. No proporciona una solución a los errores que puedan surgir durante el programa. Además, identificar los errores en un programa dado es mucho más difícil, ya que ignora todos y cada uno de los errores.
Utilice la declaración sys.exc_clear()
en el bloque except
en Python
En Python 2, el intérprete recuerda la última excepción lanzada, mientras que no ocurre en las versiones más recientes de Python. Por lo tanto, la declaración sys.exc_clear()
no es necesaria en las versiones publicadas después de Python 3. La declaración sys.exc_clear()
se puede utilizar para borrar la última excepción lanzada del intérprete de Python.
El siguiente código usa la instrucción sys.exc_clear()
en el bloque except
para ignorar una excepción y continuar con el código en Python.
try:
print(hey)
except Exception:
sys.exc_clear()
print("ignored the exception")
Aunque estas dos formas logran que el programa se ejecute sin errores, no se recomienda ignorar todos los errores en un programa. Sin embargo, ignorar solo un error en particular o algunos errores es una práctica que la mayoría de los programadores hacen para un programa saludable.
Limitar el uso de la sentencia pass
y la sentencia sys.exc_clear()
en un programa también mejora la legibilidad e identificación de errores de un programa.
Vaibhhav is an IT professional who has a strong-hold in Python programming and various projects under his belt. He has an eagerness to discover new things and is a quick learner.
LinkedIn