Zum Inhalt

Fehlerbehandlung

FEHLERBEHANDLUNG

Durch die Fehlerbehandlung kann ein Skript auch dann weiter ausgeführt werden, wenn ein Fehler auftritt.


Häufige integrierte Ausnahmen

Beispiele für häufige Fehler in Python:

def woahhh()        # SyntaxError

1 + name            # NameError

5/0                 # ZeroDivisionError

li = [1, 2, 3]
li[5]               # IndexError

di = {'a': 1}
di['b']             # KeyError

Fehlerbehandlung mit

Try / Except / Else / Endlich

  • Blöcke zur ordnungsgemäßen Fehlerbehandlung.
  • Kann diesen Versuch schreiben, außer, ansonsten für die gesamte Datei blockieren, um Fehler zu vermeiden

  • Probieren Sie → Code aus, der einen Fehler verursachen könnte

  • außer → behandelt spezifische Fehler
  • else → wird ausgeführt, wenn kein Fehler auftritt
  • finally → läuft immer, unabhängig vom Fehler
while True:
    try:                                            #if true print this
        age = int(input('Enter your age:' ))
        10/age
        raise ValueError('Hey, Cut it out!!!')      #shows errors to the user
                                                    #or raise Exception('hey cut it out')
    except ValueError:      #if an error print this, we can enter an error name to be specific
        print('please enter a valid number')
    except ZeroDivisionError:
        print('Enter value more than Zero')
    else:                   #to get out of loop
        print('thank you')
        break
    finally:
        print('ok, I am finally done')
    #Finally block of code that will always execute, regardless of whether an exception occurs or not.

Fehlerbehandlung für Funktionen

– Sie können mehrere Ausnahmen in einem Block abfangen, indem Sie Klammern und das Schlüsselwort as verwenden.

def sum(num1, num2):
    try:
        return num1 + num2
    except (TypeError, ValueError, ZeroDivisionError) as error:
        print (error)

print(sum(1,3))     # Output: 4

Kann viele Fehler in einem hinzufügen und das AS-Schlüsselwort verwenden und eine Variable benennen