Python Try Except: Schritt-für-Schritt-Beispiele

Python Try Except: Schritt-für-Schritt-Beispiele

Als Programmierer kann es vorkommen, dass Ihr Code auf Fehler oder Ausnahmen stößt. Daher ist es wichtig zu verstehen, wie Sie mit verschiedenen Arten von Fehlern in Ihrem Code umgehen. Der Umgang mit Fehlern ist ein entscheidender Teil des Codierungszyklus. Eine gängige Methode zur Fehlerbehandlung in Python ist die Verwendung der Try-Exception-Technik.

Die Python -Try-Exception-Technik besteht aus einem Try-Block und einem Except-Block. Der Try-Block enthält den Code, der möglicherweise einen Fehler oder eine Ausnahme generiert, und der Except-Block enthält den Code zur Behandlung dieser Fehler oder Ausnahmen.

Python Try Except: Schritt-für-Schritt-Beispiele

Wenn Ihr Code innerhalb des Try-Blocks ohne Probleme ausgeführt wird, wird der Except-Block umgangen. Wenn jedoch im Try-Block ein Fehler oder eine Ausnahme auftritt, wird der Code, den Sie im Except-Block geschrieben haben, ausgeführt, um das Problem zu beheben.

In diesem Artikel besprechen wir den Try-Expect-Block von Python , die verschiedenen Arten von Fehlern und Ausnahmen, die beim Schreiben von Code auftreten können, und wie Sie mit den Try-Except-Anweisungen damit umgehen können.

Lasst uns loslegen!

Inhaltsverzeichnis

Welche Arten von Fehlern gibt es in Python?

In Python können Fehler grob in zwei Haupttypen eingeteilt werden:

1. Syntaxfehler : Diese werden auch als Parsingfehler bezeichnet, die durch falsche Grammatik im Code verursacht werden. Syntaxfehler werden vom Python-Interpreter erkannt und stoppen die Ausführung Ihres Programms.

Das Folgende ist ein Beispiel für einen Syntaxfehler in Python:

print("Hello, world!"

In diesem Beispiel fehlt die schließende Klammer, sodass Python diese Anweisung nicht versteht und es sich daher um einen Syntaxfehler handelt.

Python Try Except: Schritt-für-Schritt-Beispiele

Ausnahmen : Ausnahmen treten auf, wenn bei der Ausführung eines Programms etwas schief geht, auch wenn der Code syntaktisch korrekt ist. Dazu können logische Fehler oder Laufzeitfehler wie ungültige Eingaben oder Division durch Null gehören.

Die folgende Funktion ist ein Beispiel für eine Ausnahme in Python:

print(5 / 0)

Diese Codezeile löst eine ZeroDivisionError-Ausnahme aus, die auftritt, wenn Sie versuchen, eine Zahl durch Null zu dividieren.

Python Try Except: Schritt-für-Schritt-Beispiele

Im Bild oben können Sie sehen, dass eine Ausnahme aufgetreten ist, als wir 5 durch 0 geteilt haben.

Nachdem Sie nun verstanden haben, welche Ausnahmen in Python existieren, sehen wir uns an, wie wir Ausnahmen mit einer Try-Except-Anweisung in Python behandeln können. Werfen wir im nächsten Abschnitt einen Blick auf die Syntax der Try- und Except-Blöcke in Python.

Was ist die Syntax des Try- und Except-Blocks?

Die Syntax einer Funktion definiert, wie Sie diese Funktion in Ihrem Code verwenden sollten, einschließlich der Argumente, die sie akzeptiert und was sie zurückgibt.

Wir haben die Syntax der Try-Klausel und der Except-Blöcke zusammen mit der Else- Klausel und den Final- Blöcken unten aufgelistet.

1. Syntax der Try-Anweisung

Mit der try- Anweisung können Sie einen Codeblock auf Fehler testen. Wenn Sie Code innerhalb des Try- Blocks schreiben, führt Python ihn als normalen Teil Ihres Programms aus.

Um eine try- Anweisung zu verwenden, schließen Sie einfach Ihren Code in den try- Block ein:

try: # Your code here

2. Syntax der Except-Klausel

Die Ausnahmeklausel behandelt die Fehler, die während der Ausführung des Try- Blocks auftreten können. Sie können die Art der Ausnahme angeben, die Sie abfangen möchten, oder eine allgemeine Ausnahme- Anweisung verwenden, um alle Ausnahmen zu behandeln.

Die folgende Syntax zeigt einen bestimmten Ausnahmetyp:

try: # Your code here except ValueError: # Handle ValueError exception

Um Ausnahmeklassen im Allgemeinen oder mehrere Ausnahmen zu behandeln, können Sie die unten angegebene Syntax verwenden:

try: # Your code here except Exception: # Handle any exception

3. Syntax der Else-Klausel/des Else-Blocks

Mit der else- Klausel können Sie den Codeblock ausführen, wenn im try- Block keine Fehler vorliegen.

Um eine else- Klausel zu verwenden, können Sie diese wie unten gezeigt nach dem außer- Block platzieren :

try: # Your code here except ValueError: # Handle ValueError exception else: # Code to execute when there are no errors

4. Syntax von Finally Block

Mit dem „finally“ -Block können Sie Code ausführen, unabhängig vom Ergebnis der „ try“ - und „ exclusive “ -Blöcke. Dies kann für Aktionen nützlich sein, die Sie unabhängig davon ausführen möchten, ob eine Ausnahme ausgelöst wurde oder nicht.

Um den „final“ -Block zu verwenden, können Sie ihn nach dem „ else“ -Block platzieren:

try: # Your code here except ValueError: # Handle ValueError exception else: # Code to execute when there are no errors finally: # Code to execute regardless of the result of the try and except blocks

Um die obige Syntax in Aktion zu sehen, schauen wir uns ein Beispiel für die Behandlung von Ausnahmen mit dem try-exclusive-Block in Python an.

Behandeln von Ausnahmen mit Try-Except in Python

Wenn ein Fehler auftritt, stoppt Python normalerweise und generiert eine Fehlermeldung. Sie können mehrere Ausnahmen behandeln, indem Sie einen Try- und Except- Block verwenden.

Im folgenden Beispiel behandeln wir den Division-durch-Null-Fehler, der zuvor bei der Division von 5 durch 0 erzeugt wurde.

try: print(5 / 0) except ZeroDivisionError: print("You can't divide by zero!")

In diesem Code tritt eine Ausnahme auf, aber das Programm läuft weiter und gibt die Meldung „Sie können nicht durch Null dividieren!“ aus. anstatt mit einem Fehler aufzuhören.

Python Try Except: Schritt-für-Schritt-Beispiele

Durch die Verwendung von Try- und Except -Blöcken können Sie den Ablauf Ihres Programms steuern. Durch die Behandlung spezifischer Ausnahmen können Sie dem Benutzer hilfreiches Feedback geben und Ihr Programm am Laufen halten, wenn ein Fehler auftritt.

Im obigen Beispiel können Sie sehen, dass wir die integrierte Ausnahme „ZeroDivisionError“ verwendet haben, um den Fall zu behandeln. Ähnlich gibt es auch andere Arten integrierter Ausnahmen.

Wenn Sie mit diesen Ausnahmetypen vertraut sind, können Sie entscheiden, welche Erwartung Sie verwenden sollten, wenn in Ihrem Python-Code ein Fehler auftritt. Schauen wir uns daher im nächsten Abschnitt einige Ausnahmen an.

Welche Arten von integrierten Ausnahmen gibt es?

In Python sind Ausnahmen Instanzen einer Klasse, die von der BaseException-Klasse abgeleitet ist. Wenn Fehler erkannt werden, löst Python eine Ausnahme aus. Es gibt mehrere integrierte Ausnahmen, auf die Sie beim Schreiben von Programmen in Python wahrscheinlich stoßen werden.

Werfen wir einen Blick auf einige der häufigsten:

  1. ZeroDivisionError: Dies tritt auf, wenn Sie versuchen, eine Zahl durch Null zu dividieren.

  2. NameError: Dies wird ausgelöst, wenn Sie versuchen, eine Variable oder Funktion zu verwenden, die nicht definiert wurde.

  3. ValueError : Tritt auf, wenn Sie ein Argument des richtigen Typs, aber mit einem ungültigen Wert übergeben.

  4. TypeError : Dieser Fehler tritt auf, wenn Sie ein Argument mit dem falschen Datentyp übergeben.

  5. FileNotFoundError : Tritt auf, wenn Sie versuchen, eine nicht vorhandene Datei zu öffnen oder darauf zuzugreifen.

  6. ImportError : Wird ausgelöst, wenn Sie versuchen, ein Modul oder Paket zu importieren, das nicht existiert oder nicht gefunden werden kann.

Weitere relevante Ausnahmen sind:

  1. OverflowError: Dieser Fehler wird ausgelöst, wenn ein Berechnungsergebnis zu groß ist, um dargestellt zu werden.

  2. FloatingPointError: Dieser Fehler wird ausgelöst, wenn eine Gleitkommaoperation fehlschlägt.

  3. IndexError: Tritt auf, wenn Sie versuchen, auf einen Index zuzugreifen, der außerhalb des Bereichs einer Sequenz liegt (z. B. Liste oder Tupel).

  4. KeyError: Tritt auf, wenn Sie versuchen, auf einen Schlüssel zuzugreifen, der nicht in einem Wörterbuch vorhanden ist.

  5. EOFError: Wird ausgelöst, wenn Python beim Lesen der Eingabe auf das Dateiende (End Of File, EOF) stößt, normalerweise bei einem read()-Aufruf.

  6. ArithmeticError: Eine Superklasse für arithmetische Ausnahmen wie ZeroDivisionError, OverflowError und FloatingPointError.

Manchmal kann es notwendig sein, benutzerdefinierte Ausnahmen wie eine Pass- Anweisung in einem Block zu verwenden, in dem eine Ausnahme erwartet wird. Dies sollte mit Bedacht erfolgen, da dadurch möglicherweise andere Ausnahmen unterdrückt werden.

Wir haben Ihnen die obige Liste häufiger Ausnahmefehler zur Verfügung gestellt, damit Sie sie als Leitfaden für den Umgang mit möglichen Ausnahmen beim Schreiben Ihrer Python- Programme verwenden können.

Bitte beachten Sie, dass die meisten Ausnahmen abgefangen und behandelt werden können. Es sollte jedoch darauf geachtet werden, den letzten Aufruf zu behandeln, um eine verschachtelte Behandlung anderer Ausnahmefälle zu vermeiden.

Im nächsten Abschnitt werden wir uns einige Anwendungsfälle des Try-Except-Blocks in Python ansehen. Lasst uns loslegen!

5 Anwendungsfälle des Try-Except-Blocks

Der Try-Except-Block ist eine der am häufigsten verwendeten Techniken zur Fehlerbehandlung. Im Folgenden sind einige Anwendungsfälle des Try-Except-Blocks in Python aufgeführt:

1. Dateiverwaltung mit Try Except

Beim Arbeiten mit Dateien besteht immer die Möglichkeit, dass die Datei nicht existiert oder sich nicht an dem Speicherort befindet, von dem aus Ihr Skript versucht, darauf zuzugreifen.

Der folgende Code löst eine Ausnahme aus, wenn wir versuchen, eine Datei zu öffnen, die nicht vorhanden ist.

try: with open('file.txt', 'r') as file: print(file.read()) except FileNotFoundError: print('Sorry, this file does not exist.')

In diesem Code versuchen wir, eine Datei namens „file.txt“ zu öffnen und zu lesen. Wenn „file.txt“ nicht existiert, tritt eine Ausnahme auf, aber anstelle eines Fehlers, der Ihr Programm stoppt, wird „Leider ist diese Datei nicht vorhanden“ ausgegeben.

Python Try Except: Schritt-für-Schritt-Beispiele

2. Behandeln von Benutzereingaben mit Try Except

Benutzereingaben sind ein weiterer Bereich, in dem häufig Ausnahmen auftreten. Benutzer stellen möglicherweise Daten in einem unerwarteten Format bereit oder geben eine Eingabe ein, die außerhalb des akzeptablen Bereichs liegt.

Das folgende Beispiel zeigt, wie Benutzereingaben mit einem Try-Except-Block verarbeitet werden:

try: age = int(input("Enter your age: ")) except ValueError: print("That's not a valid age. Please enter a number.")

In diesem Code bitten wir den Benutzer, sein Alter einzugeben. Wenn sie etwas eingeben, das nicht in eine ganze Zahl umgewandelt werden kann (z. B. ein Wort oder ein Buchstabe), tritt eine Ausnahme auf, das Programm stürzt jedoch nicht ab, sondern gibt Folgendes aus: „Das ist kein gültiges Alter.“ Bitte gebe eine Nummer ein.'

Python Try Except: Schritt-für-Schritt-Beispiele

3. Zugriff auf nicht vorhandene Wörterbuchschlüssel

In Python ist ein Wörterbuch eine veränderliche, ungeordnete Sammlung von Schlüssel-Wert-Paaren , wobei jeder Schlüssel eindeutig sein muss.

Wenn Sie versuchen, auf einen Schlüssel zuzugreifen, der nicht in einem Wörterbuch vorhanden ist, löst Python einen KeyError aus. Sie können „try“ und „exclusive“ verwenden, um diese Ausnahme zu behandeln, wie im folgenden Beispiel gezeigt:

dictionary = {"key1": "value1", "key2": "value2"} try: print(dictionary["key3"]) except KeyError: print("The key does not exist in the dictionary.")

In diesem Code versuchen Sie, den Wert für „key3“ aus einem Wörterbuch zu drucken. Wenn „key3“ nicht im Wörterbuch vorhanden ist, tritt eine Ausnahme auf, das Programm stoppt jedoch nicht mit einem Fehler, sondern gibt „Der Schlüssel ist nicht im Wörterbuch vorhanden“ aus.

Python Try Except: Schritt-für-Schritt-Beispiele

4. Konvertieren eines Strings in eine Ganzzahl

Es kann vorkommen, dass Sie eine Zeichenfolge in eine Ganzzahl konvertieren möchten . Wenn die Zeichenfolge jedoch keine gültige Ganzzahl darstellt, löst Python einen ValueError aus.

Sie können try und außer verwenden, um diesen Fall zu behandeln:

try: num = int("hello") except ValueError: print("That string can't be converted to integer.")

In diesem Fall kann „hello“ nicht in eine Ganzzahl konvertiert werden, daher löst Python einen ValueError aus und gibt „Diese Zeichenfolge kann nicht in eine Ganzzahl konvertiert werden“ aus.

Python Try Except: Schritt-für-Schritt-Beispiele

5. Importieren eines Moduls

Beim Importieren eines Moduls in Python ist es möglich, dass das Modul nicht existiert oder nicht installiert ist. Python löst in solchen Fällen einen ImportError aus.

Um diesen Fall zu behandeln, können Sie den folgenden Code verwenden:

try: import some_module except ImportError: print("The module 'some_module' is not installed.")

Wenn im obigen Beispiel „some_module“ nicht installiert ist oder nicht existiert, löst Python einen ImportError aus und gibt „Das Modul „some_module“ ist nicht installiert“ aus.

Python Try Except: Schritt-für-Schritt-Beispiele

Um mehr über das Schreiben von Code in Python und den Umgang mit Erwartungen zu erfahren, schauen Sie sich das folgende Video an:

Als Nächstes werden wir uns einige der Best Practices für den Umgang mit Ausnahmen ansehen. Lasst uns eintauchen!

Best Practices für die Ausnahmebehandlung

In diesem Abschnitt haben wir einige der Best Practices für die Behandlung von Ausnahmen mit dem Try-Except-Block aufgelistet. Einige Best Practices für den Umgang mit Ausnahmen sind:

1. Seien Sie bei Ausnahmen konkret

Wenn Sie Ihren Code schreiben, ist es wichtig, Ausnahmen so gezielt wie möglich abzufangen. Das bedeutet, dass Sie nicht nur einen allgemeinen Ausnahmenamen abfangen sollten, sondern den tatsächlichen Ausnahmetyp, den Sie erwarten.

Auf diese Weise wissen Sie genau, um welche Art von Fehler es sich handelt, und können diesen entsprechend beheben.

2. Unterdrücken Sie keine Ausnahmen

Wenn Sie mit Ausnahmen zu tun haben, könnten Sie versucht sein, sie einfach mit einem Ausnahmehandler abzufangen und nichts damit zu tun. Das ist im Allgemeinen eine schlechte Idee.

Wenn ein Fehler auftritt, liegt das meist daran, dass etwas behoben werden muss. Wenn Sie die Ausnahmeklasse unterdrücken, könnte der Fehler unbemerkt bleiben und später Probleme verursachen.

3. Verwenden Sie „Endlich“ für den Bereinigungscode

Manchmal müssen Sie Code ausführen, unabhängig davon, ob ein Fehler aufgetreten ist oder nicht. Dies kann etwa das Schließen einer Datei oder das Freigeben einiger Ressourcen sein.

In diesen Fällen können Sie einen „finally“ -Block verwenden. Der Code im „finally“ -Block wird auf jeden Fall ausgeführt, daher ist er ein großartiger Ort, um Ihren Bereinigungscode einzufügen.

try: # Some code here finally: # This code will run no matter what

4. Lösen Sie bei Bedarf Ausnahmen aus

Es kann Situationen geben, in denen Sie den Benutzer Ihres Codes darüber informieren müssen, dass etwas schief gelaufen ist.

In diesen Fällen können Sie eine Ausnahme auslösen. Dadurch wird die Ausführung Ihres Codes sofort gestoppt und der Benutzer darüber informiert, dass ein Fehler aufgetreten ist.

if not valid_input: raise ValueError("Your input was not valid!")

Das Verstehen und Implementieren dieser Best Practices macht Ihren Code robuster, einfacher zu debuggen und verhindert unerwartete Abstürze.

Abschließende Gedanken

Um es zusammenzufassen: Wenn Sie beim Schreiben Ihres Codes auf Ausnahmen stoßen, ist es wirklich hilfreich zu wissen, wie man „try“ und „exclusive“ in Python verwendet.

Sie sorgen dafür, dass Ihr Programm Fehler reibungslos verarbeitet, anstatt plötzlich anzuhalten. Auf diese Weise stellen Sie sicher, dass Ihr Code Überraschungen verkraftet und weitermacht.

Wenn Sie außerdem try und außer verwenden, zeigen Sie, dass Sie wirklich darüber nachdenken, was schiefgehen könnte, und sich darauf vorbereiten. Nehmen Sie sich also die Zeit, diese Tools zu erlernen – sie sind äußerst nützlich, wenn Sie Code in Python schreiben!


So speichern und laden Sie eine RDS-Datei in R

So speichern und laden Sie eine RDS-Datei in R

Sie erfahren, wie Sie Objekte aus einer .rds-Datei in R speichern und laden. In diesem Blog wird auch behandelt, wie Sie Objekte aus R in LuckyTemplates importieren.

Was ist Self in Python: Beispiele aus der Praxis

Was ist Self in Python: Beispiele aus der Praxis

Was ist Self in Python: Beispiele aus der Praxis

First N Business Days Revisited – Eine DAX-Codierungssprachenlösung

First N Business Days Revisited – Eine DAX-Codierungssprachenlösung

In diesem Tutorial zur DAX-Codierungssprache erfahren Sie, wie Sie die GENERATE-Funktion verwenden und einen Kennzahltitel dynamisch ändern.

Präsentieren Sie Einblicke mithilfe der Multi-Threaded-Dynamic-Visuals-Technik in LuckyTemplates

Präsentieren Sie Einblicke mithilfe der Multi-Threaded-Dynamic-Visuals-Technik in LuckyTemplates

In diesem Tutorial erfahren Sie, wie Sie mithilfe der Multi-Threaded-Dynamic-Visuals-Technik Erkenntnisse aus dynamischen Datenvisualisierungen in Ihren Berichten gewinnen.

Einführung in den Filterkontext in LuckyTemplates

Einführung in den Filterkontext in LuckyTemplates

In diesem Artikel werde ich den Filterkontext durchgehen. Der Filterkontext ist eines der Hauptthemen, über die sich jeder LuckyTemplates-Benutzer zunächst informieren sollte.

Beste Tipps zur Verwendung der Apps im LuckyTemplates-Onlinedienst

Beste Tipps zur Verwendung der Apps im LuckyTemplates-Onlinedienst

Ich möchte zeigen, wie der LuckyTemplates Apps-Onlinedienst bei der Verwaltung verschiedener Berichte und Erkenntnisse aus verschiedenen Quellen helfen kann.

Analysieren Sie Gewinnmargenänderungen im Laufe der Zeit – Analysen mit LuckyTemplates und DAX

Analysieren Sie Gewinnmargenänderungen im Laufe der Zeit – Analysen mit LuckyTemplates und DAX

Erfahren Sie, wie Sie Ihre Gewinnmargenänderungen mithilfe von Techniken wie Kennzahlenverzweigung und der Kombination von DAX-Formeln in LuckyTemplates ermitteln.

Materialisierungsideen für Datencaches in DAX Studio

Materialisierungsideen für Datencaches in DAX Studio

In diesem Tutorial werden die Ideen der Materialisierung von Datencaches und deren Auswirkungen auf die Leistung von DAXs bei der Bereitstellung von Ergebnissen erläutert.

Geschäftsberichte mit LuckyTemplates

Geschäftsberichte mit LuckyTemplates

Wenn Sie bisher noch Excel verwenden, ist dies der beste Zeitpunkt, LuckyTemplates für Ihre Geschäftsberichtsanforderungen zu verwenden.

Was ist LuckyTemplates Gateway? Alles was du wissen musst

Was ist LuckyTemplates Gateway? Alles was du wissen musst

Was ist LuckyTemplates Gateway? Alles was du wissen musst