So ignorieren Sie eine Ausnahme und fahren in Python fort


Beste Antwort

Lassen Sie uns zunächst klarstellen, dass das Ignorieren von Ausnahmen oft nicht das Richtige ist.

Der klassische Weg, dies zu tun, besteht darin, nur die Ausnahme zu akzeptieren und zu übergeben:

>>> def remover(filename):

... import os

... try:

... os.remove(filename)

... except FileNotFoundError:

... pass

...

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

>>>

Sie können auch verwenden a contextlib.suppress () , um Ausnahmen zu ignorieren:

>>> def remover(filename):

... import os

... import contextlib

... with contextlib.suppress(FileNotFoundError):

... os.remove(filename)

...

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

>>>

Angenommen, es ist Ihnen egal, ob die Datei y Wenn Sie versuchen zu entfernen, existiert oder nicht, so etwas ist in Ordnung. Aber ich habe eine alarmierende Tendenz gesehen, entweder 1) wichtige Ausnahmen zu ignorieren oder 2) mehr Ausnahmen zu fangen, als Sie tatsächlich erwarten (potenzielle Fehler effektiv zu verbergen).

Antwort

Bestehen

Nein, geben Sie die Frage nicht weiter.

Versuchen Sie:

Etwas, das möglicherweise fehlschlägt

Mit Ausnahme der spezifischen Ausnahme:

Pass

Bitte kommentieren Sie, warum Pass für die nächste Person, die Ihren Code liest, sinnvoll ist. Ich mache das manchmal für Dateien und Sachen, die fehlen könnten. Erfassen Sie jedoch nicht jeden Fehler, sondern nur den, von dem Sie erwarten, dass er manchmal auftritt.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.