Beste svaret
Først og fremst, la oss være klare på at det ofte ikke er riktig å ignorere unntak.
Den klassiske måten å gjøre det på er å bare godta unntaket og passere:
>>> def remover(filename):
... import os
... try:
... os.remove(filename)
... except FileNotFoundError:
... pass
...
>>> remover("non-existent file")
>>>
Du kan også bruke a contextlib.suppress () for å ignorere unntak:
>>> def remover(filename):
... import os
... import contextlib
... with contextlib.suppress(FileNotFoundError):
... os.remove(filename)
...
>>> remover("non-existent file")
>>>
Forutsatt at du ikke bryr deg om filen y Du prøver å fjerne eksisterer eller ikke, noe som det ovennevnte er greit. Men jeg har sett en alarmerende tendens til å enten 1) ignorere unntak som betyr noe, eller 2) fange flere unntak enn du faktisk forventer (effektivt skjule potensielle feil).
Svar
Bestått
Nei passerer ikke spørsmålet.
Prøv:
Noe som kan mislykkes
Unntatt det spesifikke unntaket:
Pass
Men vennligst kommenter hvorfor pass er fornuftig for neste person å lese koden din. Jeg gjør dette noen ganger for filer og ting som kan mangle. Ikke ta tak i alle feil, bare den du forventer at noen ganger vil skje.