Hogyan lehet figyelmen kívül hagyni a kivételt és folytatni a python-ban


Legjobb válasz

Először is tisztázzuk, hogy a kivételek figyelmen kívül hagyása gyakran nem megfelelő dolog.

Ennek klasszikus módja az, hogy elfogadja a kivételt és átadja:

>>> def remover(filename):

... import os

... try:

... os.remove(filename)

... except FileNotFoundError:

... pass

...

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

>>>

Használhatja a contextlib.suppress () a kivételek figyelmen kívül hagyásához:

>>> def remover(filename):

... import os

... import contextlib

... with contextlib.suppress(FileNotFoundError):

... os.remove(filename)

...

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

>>>

Feltéve, hogy nem igazán érdekel, hogy a fájl y próbálsz létezni, vagy sem, valami hasonló a fentiekhez. De riasztó tendenciát tapasztaltam: 1) figyelmen kívül hagyni a fontos kivételeket, vagy 2) több kivételt elkapni, mint amire valóban számítasz (hatékonyan elrejtve a lehetséges hibákat).

Válasz

Pass

Nem felel meg a kérdésnek.

Próbálja:

Valami, ami sikertelen lehet

Kivéve a konkrét kivételt:

Hozzáférés

De kérjük, kommentálja, miért van értelme a továbbadásnak, ha a következő személy elolvassa a kódját. Ezt néha olyan fájlok és egyéb dolgok miatt teszem, amelyek hiányozhatnak. Ne fogjon meg minden hibát, csak azt, amelyre néha számít.

Vélemény, hozzászólás?

Az email címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük