Cómo ignorar una excepción y proceder en python


Mejor respuesta

En primer lugar, dejemos en claro que ignorar las excepciones a menudo no es lo correcto.

La forma clásica de hacerlo es simplemente aceptar la excepción y pasar:

>>> def remover(filename):

... import os

... try:

... os.remove(filename)

... except FileNotFoundError:

... pass

...

>>> remover("non-existent file")

>>>

También puede utilizar un contextlib.suppress () para ignorar las excepciones:

>>> def remover(filename):

... import os

... import contextlib

... with contextlib.suppress(FileNotFoundError):

... os.remove(filename)

...

>>> remover("non-existent file")

>>>

Suponiendo que realmente no le importa si el archivo y Está intentando eliminar existe o no, algo como lo anterior está bien. Pero he visto una tendencia alarmante a 1) ignorar las excepciones que importan, o 2) detectar más excepciones de las que realmente espera (ocultando efectivamente errores potenciales).

Respuesta

Pasar

No, no pase la pregunta.

Pruebe:

Algo que puede fallar

Excepto la excepción específica:

Pass

Pero por favor comente por qué tiene sentido pasar para que la próxima persona lea su código. A veces hago esto para archivos y cosas que pueden faltar. Sin embargo, no detecte todos los errores, solo el que espera que ocurra a veces.

Deja una respuesta

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