Drucken einer Exception in Python

Vaibhav Vaibhav 30 Januar 2023
  1. Drucken Sie eine Ausnahme mit try-except-finally-Blöcken in Python
  2. Druckausnahme mit dem Modul traceback in Python
Drucken einer Exception in Python

In Python ist eine Ausnahme ein Fehler. In Python gibt es viele Fehler oder Ausnahmen, wie z. B. TypeError, SyntaxError, KeyError, AttributeError usw. In Python verwenden wir try-except-finally, um diese Ausnahmen zu behandeln, da ohne diese Blöcke Diese Ausnahmen würden die Ausführung des Programms stoppen. try-except-finally-Blöcke in Python können verwendet werden, um diese Ausnahmen zu drucken, ohne die Programmausführung anzuhalten.

Drucken Sie eine Ausnahme mit try-except-finally-Blöcken in Python

Betrachten Sie das folgende Code-Snippet.

dictionary = {
    "hello": "world",
}
number = 25

try:
    number = number + dictionary["hello"]
    print(number)
except Exception as e:
    print(repr(e))

Ausgabe:

TypeError("unsupported operand type(s) for +: 'int' and 'str'",)

Im obigen Code initialisieren wir zuerst ein Dictionary mit hello als Schlüssel, der auf den Zeichenkettenwert world zeigt, und eine Variable number. Dann versuchen wir im Block try, auf den im dictionary gespeicherten Zeichenkettenwert zuzugreifen und ihn der Variablen number hinzuzufügen.

Diese Aussage ist sowohl praktisch als auch konzeptionell falsch, da es unmöglich ist, einer integer einen string hinzuzufügen. Der Block except fängt diesen Fehler ab und druckt das dieser Ausnahme zugeordnete Objekt Exception in der Konsole.

Druckausnahme mit dem Modul traceback in Python

Python verfügt über ein integriertes Modul, traceback, zum Drucken und Formatieren von Ausnahmen. Und es macht es einfach, die gesamte Ausnahme in der Konsole zu drucken.

In Python können Sie Ausnahmen manuell mit dem Schlüsselwort raise auslösen. Im folgenden Codeausschnitt verwenden wir das Schlüsselwort raise, um Ausnahmen innerhalb des Blocks try auszulösen.

import traceback

try:
    raise KeyError
except Exception as e:
    traceback.print_exc()

Ausgabe:

Traceback (most recent call last):
  File ".\main.py", line 4, in <module>
    raise KeyError
KeyError

Im obigen Code lösen wir eine KeyError-Ausnahme aus und verwenden die Funktion print_exc() aus dem Modul traceback, um die Ausnahme zu drucken. Diese Funktion gibt die Informationen zur Ausnahme aus und ist eine Abkürzung für traceback.print_exception(*sys.exc_info(), limit, file, chain).

Weitere Informationen zur Funktion print_exception() finden Sie in den offiziellen Dokumenten hier.

Vaibhav Vaibhav avatar Vaibhav Vaibhav avatar

Vaibhav is an artificial intelligence and cloud computing stan. He likes to build end-to-end full-stack web and mobile applications. Besides computer science and technology, he loves playing cricket and badminton, going on bike rides, and doodling.

Verwandter Artikel - Python Exception