Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Grundlagen der Fehlerbehandlung in Python: Vermeidung von Programmabstürzen | Fehlerbehandlung
Quizzes & Challenges
Quizzes
Challenges
/
Python Fortgeschrittene Konzepte

bookGrundlagen der Fehlerbehandlung in Python: Vermeidung von Programmabstürzen

Fehlerbehandlung ist eine entscheidende Fähigkeit für jeden Programmierer, da sie es Programmen ermöglicht, angemessen auf unerwartete Probleme zu reagieren. Dieses Kapitel behandelt die Arten von Fehlern und Ausnahmen, auf die Sie stoßen können, sowie deren Behandlung mit den Blöcken try und except.

Arten von Fehlern und Ausnahmen in Python

Python unterteilt Fehler in zwei Hauptkategorien: Syntaxfehler und Ausnahmen.

Syntaxfehler

Syntaxfehler treten auf, wenn der Parser eine fehlerhafte Anweisung erkennt. Dies kann ein Tippfehler, eine fehlende Klammer oder eine falsche Einrückung sein. Hier ein Beispiel:

1
print("Hello world"
copy

Dies führt zu einem Syntaxfehler (SyntaxError), da die schließende Klammer fehlt.

Ausnahmen oder Laufzeitfehler

Ausnahmen sind Fehler, die während der Ausführung erkannt werden. Häufige Ausnahmen sind:

  • IndexError: Zugriff auf einen nicht vorhandenen Index;
  • ValueError: Übergabe eines Arguments mit falschem Wert;
  • TypeError: Daten­typ­inkompatibilität, z. B. Addition eines Strings zu einer Ganzzahl;
  • ZeroDivisionError: Division einer Zahl durch Null;
  • FileNotFoundError: Zugriff auf eine nicht vorhandene Datei.

Hier ist eine Ausnahmeklassen-Hierarchie, bei der jeder Fehler auf niedrigerer Ebene von dem darüberliegenden erbt. Das bedeutet, dass beim Abfangen einer Ausnahme auf höherer Ebene, wie Exception, auch alle davon abgeleiteten 'Kind'-Fehler abgefangen werden. Es ist nicht notwendig, jede einzelne Ausnahme zu kennen, aber die gelb hervorgehobenen sind die gebräuchlichsten und besonders wichtig zu beachten.

Der try-, except-Block

Zur effektiven Behandlung von Ausnahmen verwendet Python die Blöcke try und except. Dadurch kann das Programm auch dann fortgesetzt werden, wenn ein Fehler auftritt.

Beispiel für einen try-, except-Block

1234567
try: # Attempt to divide by zero result = 10 / 0 print("The result is", result) except ZeroDivisionError: # This code runs if the ZeroDivisionError is raised print("Attempted to divide by zero.")
copy

Wenn die Division möglich wäre (d. h. durch eine andere Zahl als Null geteilt wird), würde die print-Anweisung im try-Block ausgeführt und der except-Block übersprungen werden. Der except-Block wird nur ausgeführt, wenn der spezifische Fehler, für den er vorgesehen ist, ausgelöst wird.

Aufgabe

Swipe to start coding

Schreibe ein Skript, das verschiedene Fehlertypen mit grundlegenden Operationen behandelt.

#Verwende Kommentare als hilfreiche Tipps zur Lösung dieser Aufgabe 😉

Lösung

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 2. Kapitel 1
single

single

Fragen Sie AI

expand

Fragen Sie AI

ChatGPT

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

close

bookGrundlagen der Fehlerbehandlung in Python: Vermeidung von Programmabstürzen

Swipe um das Menü anzuzeigen

Fehlerbehandlung ist eine entscheidende Fähigkeit für jeden Programmierer, da sie es Programmen ermöglicht, angemessen auf unerwartete Probleme zu reagieren. Dieses Kapitel behandelt die Arten von Fehlern und Ausnahmen, auf die Sie stoßen können, sowie deren Behandlung mit den Blöcken try und except.

Arten von Fehlern und Ausnahmen in Python

Python unterteilt Fehler in zwei Hauptkategorien: Syntaxfehler und Ausnahmen.

Syntaxfehler

Syntaxfehler treten auf, wenn der Parser eine fehlerhafte Anweisung erkennt. Dies kann ein Tippfehler, eine fehlende Klammer oder eine falsche Einrückung sein. Hier ein Beispiel:

1
print("Hello world"
copy

Dies führt zu einem Syntaxfehler (SyntaxError), da die schließende Klammer fehlt.

Ausnahmen oder Laufzeitfehler

Ausnahmen sind Fehler, die während der Ausführung erkannt werden. Häufige Ausnahmen sind:

  • IndexError: Zugriff auf einen nicht vorhandenen Index;
  • ValueError: Übergabe eines Arguments mit falschem Wert;
  • TypeError: Daten­typ­inkompatibilität, z. B. Addition eines Strings zu einer Ganzzahl;
  • ZeroDivisionError: Division einer Zahl durch Null;
  • FileNotFoundError: Zugriff auf eine nicht vorhandene Datei.

Hier ist eine Ausnahmeklassen-Hierarchie, bei der jeder Fehler auf niedrigerer Ebene von dem darüberliegenden erbt. Das bedeutet, dass beim Abfangen einer Ausnahme auf höherer Ebene, wie Exception, auch alle davon abgeleiteten 'Kind'-Fehler abgefangen werden. Es ist nicht notwendig, jede einzelne Ausnahme zu kennen, aber die gelb hervorgehobenen sind die gebräuchlichsten und besonders wichtig zu beachten.

Der try-, except-Block

Zur effektiven Behandlung von Ausnahmen verwendet Python die Blöcke try und except. Dadurch kann das Programm auch dann fortgesetzt werden, wenn ein Fehler auftritt.

Beispiel für einen try-, except-Block

1234567
try: # Attempt to divide by zero result = 10 / 0 print("The result is", result) except ZeroDivisionError: # This code runs if the ZeroDivisionError is raised print("Attempted to divide by zero.")
copy

Wenn die Division möglich wäre (d. h. durch eine andere Zahl als Null geteilt wird), würde die print-Anweisung im try-Block ausgeführt und der except-Block übersprungen werden. Der except-Block wird nur ausgeführt, wenn der spezifische Fehler, für den er vorgesehen ist, ausgelöst wird.

Aufgabe

Swipe to start coding

Schreibe ein Skript, das verschiedene Fehlertypen mit grundlegenden Operationen behandelt.

#Verwende Kommentare als hilfreiche Tipps zur Lösung dieser Aufgabe 😉

Lösung

Switch to desktopWechseln Sie zum Desktop, um in der realen Welt zu übenFahren Sie dort fort, wo Sie sind, indem Sie eine der folgenden Optionen verwenden
War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 2. Kapitel 1
single

single

some-alt