Fangen Sie alle Ausnahmen ab in Python
-
Verwenden Sie die Klasse
Exception
, um alle Ausnahmen in Python abzufangen -
Verwendung von die Klasse
BaseException
zum Abfangen aller Ausnahmen in Python
Wir verwenden die Blöcke try
und except
, um Ausnahmen zu behandeln. Der Block try
enthält Code, der möglicherweise eine Ausnahme auslöst. Wenn eine Ausnahme ausgelöst wird, können wir den alternativen Code im Block except
angeben, der ausgeführt werden kann. Wir wissen, dass wir in Python verschiedene Arten von Ausnahmen haben, um mehrere except
-Anweisungen für verschiedene Ausnahmen zu haben.
Beispielsweise,
try:
raise ValueError()
except ValueError:
print("Value Error")
except KeyError:
print("Key Error")
Ausgabe:
Value Error
Manchmal möchten wir jedoch möglicherweise einen allgemeinen except
-Block, der alle Ausnahmen abfangen kann. Dies ist sehr einfach zu implementieren. Wenn wir im Block except
keine bestimmte Ausnahme erwähnen, wird jede möglicherweise auftretende Ausnahme abgefangen.
Der folgende Code implementiert dies.
try:
# Your
# Code
pass
except:
print("Exception Encountered")
Es ist jedoch nicht ratsam, diese Methode zu verwenden, da sie auch Ausnahmen wie KeyBoardInterrupt
und SystemExit
abfängt, die normalerweise ignoriert werden sollen.
Verwenden Sie die Klasse Exception
, um alle Ausnahmen in Python abzufangen
Wir können die oben genannten Fehler vermeiden, indem wir einfach die Klasse Exception
abfangen. Alle integrierten, nicht systemexitierenden Ausnahmen sowie benutzerdefinierte Ausnahmen werden normalerweise von dieser Klasse abgeleitet.
Beispielsweise,
try:
# Your
# Code
pass
except Exception as e:
print("Exception Encountered")
Verwendung von die Klasse BaseException
zum Abfangen aller Ausnahmen in Python
Es sollte beachtet werden, dass selbst das obige Verfahren einige Ausnahmen auslassen kann. Wir können auch die Klasse BaseException
verwenden, die ganz oben in der Hierarchie steht. In einigen Fällen kann dies erforderlich sein, und wir können seine Verwendung im folgenden Code sehen.
try:
# Your
# Code
pass
except BaseException as e:
print("Exception Encountered")
In diesem Tutorial haben wir einige Methoden besprochen, die möglicherweise nicht perfekt sind, aber die meisten der angesprochenen Ausnahmen erfassen können. Im Allgemeinen ist es nicht ratsam, alle Ausnahmen zu erfassen. Seien Sie daher bei der von Ihnen gewählten Methode vorsichtig.
Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.
LinkedIn