decocode decocode deco    

Bedingungen und Ausnahmebehandlung #

► Python-Dokumentation: if

Bedingte Verzweigungen innerhalb eines Programms werden mit dem Befehl if eingeleitet. Alternative Bedingungen werden mit elif geprüft. Verzweigungen für alle übrigen Fälle werden mit else eingeleitet. elif und else sind optional.

Die Programmblöcke, die im Falle einer positiven Prüfung einer Bedingung ausgeführt werden sollen, müssen eingerückt werden. Die in Python übliche Einrückung beträgt vier Leerzeichen.

Quelltext auswählen
1
2
3
4
5
6
7
8
9
10
11
12
13
14
a = input("Geben Sie eine Zahl ein: ")
if a == "":
    print("Sie haben nichts eingegeben!")
else:
    a = float(a)
    if a < 0:
        print("Die Zahl ist negativ.")
    elif a > 0:
        print("Die Zahl ist positiv.")
    else:
        print("Die Zahl ist 0.")

# Ab hier wird das Programm normal fortgesetzt
print("Ihre Eingabe war", a)

Operatoren #

► Python-Dokumentation: Boolean Operations Comparisons

Um Bedingungen prüfen zu können, werden logische und Vergleichsoperatoren verwendet:

OperatorBedeutung
andund
oroder
notnicht
<kleiner als
<=kleiner oder gleich
==gleich
!=ungleich
>=größer oder gleich
>größer als

Ausnahmebehandlungen #

► Python-Dokumentation: try

Unter Umständen kann ein Programm durch einen Laufzeitfehler abgebrochen werden. Dies lässt sich durch eine Ausnahmebehandlung mit Hilfe einer try/except-Konstruktion umgehen, allerdings kann in der Entwicklungsphase die Fehlersuche dadurch erschwert werden, da für den try-Abschnitt keine Fehlermeldungen mehr ausgegeben werden.

Im obigen Beispiel wird davon ausgegangen, dass der Benutzer nur Zahlen eingibt. Sollte er aber einen nicht numerischen Wert eingeben, so würde beim Versuch der Umwandlung der Eingabe in eine Gleitkommazahl in Zeile 5 ein Laufzeitfehler auftreten. Dies wird hier mit einer Ausnahmebehandlung aufgefangen:

Quelltext auswählen
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
a = input("Geben Sie eine Zahl ein: ")
if a == "":
    print("Sie haben nichts eingegeben!")
else:
    try:
        a = float(a)
        if a < 0:
            print("Die Zahl ist negativ.")
        elif a > 0:
            print("Die Zahl ist positiv.")
        else:
            print("Die Zahl ist 0.")
    except:
        print("Ihre Eingabe war keine Zahl!")

# Ab hier wird das Programm normal fortgesetzt
print("Ihre Eingabe war", a)