Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Abfangen und Behandeln von Ausnahmen | Comprehensive Error Handling
Python Fortgeschrittene Konzepte

Abfangen und Behandeln von Ausnahmen

Swipe um das Menü anzuzeigen

Bei Dateioperationen oder anderem Code, der auf Fehler stoßen könnte, ist das strukturierte Fehlerbehandlungsmodell von Python mit den Blöcken try, except, else und finally unerlässlich für robuste Programme. Der try-Block enthält Code, der eine Ausnahme auslösen könnte. Tritt eine Ausnahme auf, wird der except-Block ausgeführt, sodass der Fehler kontrolliert behandelt werden kann. Wird keine Ausnahme ausgelöst, wird der else-Block ausgeführt – ideal für Code, der nur laufen soll, wenn im try-Block alles erfolgreich war. Der finally-Block wird immer ausgeführt, unabhängig davon, ob eine Ausnahme aufgetreten ist, und eignet sich daher besonders für Aufräumarbeiten wie das Schließen von Dateien oder das Freigeben von Ressourcen. Wie im Video gezeigt, hilft diese Struktur dabei, normale Logik, Fehlerbehandlung und Aufräumarbeiten zu trennen, was zu übersichtlicherem und sichererem Code führt.

Python-Fehlerbehandlungsblöcke

  • Der try-Block enthält Code, der eine Ausnahme auslösen könnte;
  • Der except-Block fängt Ausnahmen ab und behandelt sie, falls sie auftreten;
  • Der else-Block wird nur ausgeführt, wenn im try-Block keine Ausnahme ausgelöst wurde;
  • Der finally-Block wird immer ausgeführt, unabhängig davon, ob eine Ausnahme aufgetreten ist oder nicht.
123456789101112131415
filename = "example.txt" try: file = open(filename, "w") file.write("Hello, Python error handling!") except OSError as e: print("An error occurred while writing to the file:", e) else: print("File written successfully.") finally: try: file.close() print("File closed.") except Exception: print("File was never opened or already closed.")

Diese Struktur ermöglicht es, normale Logik, Fehlerbehandlung und Aufräumarbeiten zu trennen. try wird für riskanten Code verwendet, except für die Fehlerbehandlung, else für erfolgreiche Ausführungen und finally für Aktionen, die immer ausgeführt werden müssen, wie das Schließen von Dateien oder das Freigeben von Ressourcen.

question mark

Welche Aussage beschreibt die Ausführungsreihenfolge der Blöcke else und finally in einer try, except, else, finally-Struktur am besten?

Wählen Sie die richtige Antwort aus

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 1. Kapitel 2

Fragen Sie AI

expand

Fragen Sie AI

ChatGPT

Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen

Abschnitt 1. Kapitel 2
some-alt