Python-Try-Except
- Vorherige Seite Python-PIP
- Nächste Seite Python Befehlszeile eingeben
try
Der Block ermöglicht es Ihnen, Codeblöcke zu testen, um Fehler zu finden.
except
Der Block ermöglicht es Ihnen, Fehler zu behandeln.
finally
Der Block ermöglicht es Ihnen, Code auszuführen, unabhängig davon, wie das Ergebnis des try- und except-Blocks ist.
Fehlerbehandlung
Wenn wir Python aufrufen und ein Fehler oder eine Ausnahme auftritt, wird normalerweise gestoppt und eine Fehlermeldung generiert.
Man kann try
Diese Anweisung behandelt diese Ausnahmen:
Beispiel
Der try-Block wird eine Ausnahme erzeugen, weil x nicht definiert ist:
try: print(x) except: print("Ein Ausnahmevorgang ist aufgetreten")
Da ein Fehler im try-Block aufgetreten ist, wird der except-Block ausgeführt.
Wenn kein try-Block vorhanden ist, wird das Programm abstürzen und einen Fehler auslösen:
Beispiel
Dieser Ausdruck wird einen Fehler auslösen, weil x nicht definiert ist:
print(x)
Multiple Ausnahmen
Sie können so viele exception-Blöcke wie nötig definieren, z.B., wenn Sie spezielle Codeblöcke für spezielle Fehlerarten ausführen möchten:
Beispiel
Wenn ein try-Block einen Fehler auslöst NameError
dann wird eine Nachricht ausgegeben, und bei anderen Fehlern eine andere Nachricht:
try: print(x) except NameError: print("Die Variable x ist nicht definiert") except: print("Etwas anderes ist schiefgelaufen")
Else
Wenn kein Fehler aufgetreten ist, können Sie else
Schlüsselwörter, um einen Codeblock zu definieren, der ausgeführt werden soll:
Beispiel
In diesem Beispiel:try
Dieser Block erzeugt keine Fehler:
try: print("Hallo") except: print("Etwas ist schiefgelaufen") else: print("Nichts ist schiefgelaufen")
Finally
Wenn angegeben finally
Ein Block wird unabhängig davon ausgeführt, ob ein Fehler im try-Block aufgetreten ist oder nicht.
Beispiel
try: print(x) except: print("Etwas ist schiefgelaufen") finally: print("Der 'try except' ist beendet")
Das ist sehr nützlich, um Objekte zu schließen und Ressourcen zu bereinigen:
Beispiel
Versuchen Sie, eine nicht schreibbare Datei zu öffnen und zu schreiben:
try: f = open("demofile.txt") f.write("Lorum Ipsum") except: print("Etwas ist beim Schreiben in die Datei schiefgelaufen") finally: f.close()
Das Programm kann fortgesetzt werden, und der Dateiobjekt wird nicht geöffnet.
Ausnahme auslösen
Als Python-Entwickler können Sie wählen, ob Sie eine Ausnahme auslösen möchten, wenn eine Bedingung eintritt.
Um eine Ausnahme auszulösen, verwenden Sie raise
Schlüsselwörter.
Beispiel
Wenn x kleiner als 0 ist, wird eine Ausnahme ausgelöst und das Programm wird beendet:
x = -1 if x < 0: raise Exception("Entschuldigung, keine Zahlen unter Null")
raise
Schlüsselwörter zur Auslösung von Ausnahmen.
Sie können den Typ der ausgelösten Ausnahme und den Text, der dem Benutzer gezeigt wird, definieren.
Beispiel
Wenn x kein Integer ist, wird TypeError ausgelöst:
x = "hello" if not type(x) is int: raise TypeError("Nur Ganzzahlen sind erlaubt")
- Vorherige Seite Python-PIP
- Nächste Seite Python Befehlszeile eingeben