In Python wird Fehlerbehandlung durch die Verwendung von try und except Blöcken durchgeführt.
Der try-block enthält den Code, der möglicherweise einen Fehler verursachen kann. Wenn ein Fehler auftritt, bricht Python die Ausführung des try-blocks ab und springt in den except-block.
Das allgemeine Format sieht so aus:
```python
try:
# Code, der einen Fehler verursachen könnte
except Fehlerart:
# Code, der ausgeführt wird, wenn ein Fehler auftritt
```
Wenn zum Beispiel ein Codeblock eine Division durch Null versucht, würde dies normalerweise zu einem “ZeroDivisionError” führen und das Programm würde abstürzen. Mit try und except können wir diesen Fehler kontrollieren und eine geeignete Antwort liefern:
```python
try:
print(5/0)
except ZeroDivisionError:
print(“Du kannst nicht durch Null teilen!”)
```
In diesem Fall würde “Du kannst nicht durch Null teilen!” ausgegeben anstelle eines Absturzes.
Darüber hinaus können wir mehrere except-blocks haben, um verschiedene Arten von Fehlern zu behandeln, oder einen allgemeinen except-block, der auf alle Arten von Fehlern reagiert:
```python
try:
# code
except ValueError:
# behandeln eines speziellen Wertfehlers
except:
# dies wird auf jeden anderen Fehler reagieren
```
Es ist wichtig zu beachten, dass Python die except-Blöcke in der Reihenfolge ausführt, in der sie angezeigt werden. Sobald es einen Block findet, der auf den Fehler reagiert, führt es diesen aus und überspringt den Rest.
Schließlich könnten wir auch einen else-block nach der try/except-blocks verwenden, der Code enthält, der ausgeführt wird, wenn der try-block erfolgreich ausgeführt wird und keinen Fehler auslöst:
```python
try:
# code
except:
# dieser Code wird ausgeführt, wenn es einen Fehler gibt
else:
# dieser Code wird ausgeführt, wenn es keinen Fehler gibt
```