Heim > Backend-Entwicklung > Python-Tutorial > Mit welcher Methode werden Ausnahmen in Python abgefangen und behandelt?

Mit welcher Methode werden Ausnahmen in Python abgefangen und behandelt?

WBOY
Freigeben: 2023-05-10 20:19:05
nach vorne
1767 Leute haben es durchsucht

Python-Ausnahmen sind Fehler, die während der Programmausführung auftreten und zum Beenden des Programms führen können.

In Python ist die Ausnahmebehandlung ein Mechanismus, der es Entwicklern ermöglicht, Ausnahmen abzufangen, zu behandeln und zu melden, wenn sie in einem Programm auftreten, sodass das Programm weiterhin ausgeführt oder ordnungsgemäß beendet werden kann, wenn eine Ausnahme auftritt.

In Python können Ausnahmen Standardausnahmen (wie SyntaxError und TypeError) oder benutzerdefinierte Ausnahmen sein. Standardausnahmen werden intern von Python definiert, während benutzerdefinierte Ausnahmen von Entwicklern definiert werden, normalerweise für eine bestimmte Anwendung oder Bibliothek.

Im Folgenden sind einige häufige Python-Ausnahmen aufgeführt:

  • SyntaxError: Syntaxfehler, der normalerweise durch Syntaxfehler wie fehlende Klammern, Doppelpunkte usw. verursacht wird.

  • TypeError: Typfehler, der normalerweise durch die Kombination von Objekten unterschiedlichen Typs verursacht wird, z. B. durch das Hinzufügen von Zeichenfolgen und Zahlen.

  • ValueError: Wertfehler, der normalerweise dadurch verursacht wird, dass der bereitgestellte Wert nicht dem erwarteten Bereich oder Format entspricht, z. B. eine ungültige Zeichenfolge beim Konvertieren einer Zeichenfolge in eine Ganzzahl.

  • IndexError: Indexfehler, der normalerweise durch den Versuch verursacht wird, auf ein nicht vorhandenes Element in einer Liste oder einem Tupel zuzugreifen.

  • KeyError: Schlüsselfehler, der normalerweise durch den Versuch verursacht wird, auf einen Schlüssel zuzugreifen, der nicht im Wörterbuch vorhanden ist.

  • IOError: Ein-/Ausgabefehler, der normalerweise durch ein Problem beim Versuch, eine Datei zu lesen oder zu schreiben, verursacht wird.

  • AttributeError: Attributfehler, der normalerweise durch den Versuch verursacht wird, auf eine Eigenschaft oder Methode zuzugreifen, die im Objekt nicht vorhanden ist.

In Python können Sie die try-exclusive-Anweisung verwenden, um Ausnahmen abzufangen und zu behandeln. Die Try-Anweisung enthält Code, der eine Ausnahme auslösen kann, während die Except-Anweisung den Code definiert, der ausgeführt werden soll, wenn eine Ausnahme abgefangen wird.

Sie können mehrere Ausnahmen verwenden, um verschiedene Arten von Ausnahmen abzufangen. Try-Exception kann auch mit else kombiniert werden. Dies bedeutet, dass der Inhalt der else-Anweisung ausgeführt wird Darüber hinaus können Sie mit der final-Anweisung Code definieren, der immer nach dem try-Anweisungsblock ausgeführt wird.

Beispiel:

Fall 1: Verwenden Sie die try-exclusive-Anweisung, um Ausnahmen abzufangen und zu behandeln.

Beispiel:

try:
100/0 # Code, der Ausnahmen verursachen kann.

Fall 2: Try-Exception-Anweisung mit else-Anweisung verwenden (wenn die try-Anweisung keine Ausnahme erkennt, wird der Inhalt der else-Anweisung ausgeführt)

Mit welcher Methode werden Ausnahmen in Python abgefangen und behandelt?

Wenn die try-Anweisung eine Ausnahme erkennt, wird sie nicht ausgeführt Inhalt der else-Anweisung

except ZeroDivisionError: #(捕获特定的异常类型ZeroDivisionError,ZeroDivisionError是Python中的内置异常类之一,用于表示在除数为零的情况下进行了除法操作所引发的异常。)

    print('因为这里打印出异常类型:除数不能为0。')# 处理值错误的代码
Nach dem Login kopieren
Abgefangen~

Wenn in der try-Anweisung eine Ausnahme erkannt wird, wird der Ausnahmebehandlungsinhalt der else-Anweisung ausgeführt:

>>> try:
...     1 / 0
... except:
...     print("逮到了~")
... else:
...     print("没逮到~")
...
Nach dem Login kopieren

Nicht abgefangen~

Fall 3: Try-Exception verwenden Anweisungskombination final-Anweisung (abschließende Anweisung, die unabhängig davon ausgeführt werden muss, ob eine Ausnahme auftritt oder nicht)

Beispiel:

try:

‘abc’+ 123

>>> try:
...     1 / 1
... except:
...     print("逮到了~")
... else:
...     print("没逮到~")
...
1.0
Nach dem Login kopieren


Die Ausnahmebehandlung ist ein wichtiges Konzept In Python sollten Entwickler zunächst verstehen, wie man Ausnahmen richtig abfängt und behandelt, um die Programmstabilität und -zuverlässigkeit sicherzustellen.

Mit welcher Methode werden Ausnahmen in Python abgefangen und behandelt?Erweitert: Methoden zum Abfangen von Ausnahmen

Zwei Methoden zum Abfangen von Ausnahmen: Erfassen Sie die Ausnahmeinformationen, egal um welche Art von Ausnahme es sich handelt.

1. Ausnahme verwenden: Alle Ausnahmen sind Unterklassen von Exception. Daher kann Exception mit allen Arten von Ausnahmen übereinstimmen.

Beispiel:

except TypeError: #TypeError为类型错误,通常是由于将不同类型的对象组合在一起而引起的,如将字符串和数字相加。
    print('因为这里打印出异常类型:类型错误。')# 处理类型错误的代码
finally:
    print('不论是否无法异常,都执行这句话') # 无论是否发生异常都会执行的代码
Nach dem Login kopieren

kann die Ursache der Ausnahme normal erfassen, aber keine detaillierten Ausnahmeinformationen ausgeben (den Ort, an den die Ausnahme gesendet wird, und den Code der Ausnahme).

2. Verwenden Sie das Traceback-Modul: Verwenden Sie die Funktion format_exc im Traceback-Modul, um Ausnahmeinformationen und Funktionsaufrufstapelinformationen dort anzuzeigen, wo die Ausnahme auftritt.

Beispiel:

>>> try:
    100/0
except Exception  as e:
    print('未知异常:', e)
# 对于很多刚学Python或者是学着学着迷茫了的小伙伴,我给大家准备了一套Python的学习资料。
# 包括数百本电子书、Python基础视频教程、项目实战,疑难解答,直接在文末名片自取。
   
未知异常: division by zero
>>>
Nach dem Login kopieren

Der obige Code gibt die detaillierten Informationen zum Funktionsaufrufstapel aus, die die Ausnahme verursacht haben

Das obige ist der detaillierte Inhalt vonMit welcher Methode werden Ausnahmen in Python abgefangen und behandelt?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:yisu.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage