h1

Python Fehlerverarbeitung

Juli 1, 2008

Kostenlose Programme werden einem heutzutage gerade hinterhergeworfen, Marktanteile hier, GoogleApps da, überall gibt es die Software die man eigentlich schon immer vermisst hat. Gerade in diesen Zeiten wird es immer wichtiger auch mal ein Programm zu haben, was wirklich funktioniert. Eine Anwendung die genau das kann, was man von ihr erwartet, und das möglichst Fehlerfrei.

Lange Rede kurzer Sinn, was Adidas erst jetzt promotet wissen Programmierer schon lange „Impossible is nothing“, vor Bugs muss man sich überall schützen.

Zum Glück hat man mit Python da einen Freund an der Seite, der es einem leicht macht:

try:

findAuthor()

except:

print ‚Auhtor nicht gefunden‘

else:

# Author gefunden, also in Datenbank eintrage

saveAuthor()

Besonders der Else Zweig ist sehr praktischer, er tritt immer dann in Kraft wenn kein Fehler aufgetreten ist.

Manchmal muss man auch zwischen verschieden Fehlern unterscheiden:

zahlen = [0, 7, 8, 9]

index = 7

try:

var = 50 / zahlen[index]

except ZeroDivisionError:

print ‚Es kann nicht durch 0 geteilt werden‘

except IndexError:

print ‚In der Listen gibt es kein‘ + str(index) ‚. Element‘

except e:

print‘ Unbekannter Fehler: ‚

print e.value

Einen eigenen Fehler hervorrufen kann man mit dem Statement raise:

raise MyError ‚Meine Fehlermeldung‘

Zusätzlich zu dem except und dem else Zweig kennt der try Block noch den finally Zweig, dieser wird in jedem Fall ausgeführt. Diese sogenannte Clean-Up Action kann zum Beispiel benutzt werden, um eine Datei oder eine Datenbankverbindung zu schließen, egal ob der Vorgang nun erfolgreich war oder nicht.

Eine Liste von weiteren Fehlern, und genau Erklärungen gibt es hier:

http://docs.python.org/tut/node10.html

Schreibe einen Kommentar

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s

%d Bloggern gefällt das: