Möchten wir, dass ein Ausdruck bzw. ein Block nur unter bestimmten Bedingungen ausgeführt wird,
kommt die if
- Anweisung zum Einsatz. Die dem if
- Anweisung folgende Anweisung
(bzw. Block) wir nur dann ausgeführt, wenn die Auswertung der if
- Anweisung True
ergibt. Ergibt die if
- Anweisung False
wird die folgende Anweisung (Block) nicht
ausgeführt.
Nachfolgend ein Beispiel zur if
- Anweisung.
def handle(arg): if (arg == 2): print "Argument equals two" handle(1) handle(2) handle(3)
Die Ausführung des Programms führt zu folgender Ausgabe auf der Systemausgabe:
Argument equals two
Die if
- Anweisung ergibt nur in einem Fall den Wert True
, sodass auch
nur einmal eine Ausgabe erfolgt.
Möchten wir neben der Definition was im Falle von True
geschehen soll noch,
definieren, was im gegenteiligen Fall geschehen soll, verwenden wir das optionale else
.
Die Anweisung (Block) nach einem else
wird immer dann ausgeführt, wenn die
zugehörige if
- Anweisung das Ergebnis False
hat.
Nachfolgend ein Beispiel für if
mit optionalem else
.
def handle(arg): if (arg == 2): print "Argument equals two" else: print "if not True" handle(1) handle(2) handle(3)
Die Ausführung des Programms führt zu folgender Ausgabe auf der Systemausgabe:
if not True Argument equals two if not True
Wenn wir weitere Bedingungen auf True
testen möchten verwenden
wir eine beliebige Anzahl von elif
- Anweisungen, die nur zur Auswertung
kommen, wenn zuvor kein if
oder elif
True
als Ergebnis hatten.
def handle(arg): if (arg == 2): print "Argument equals two" elif (arg == 3): print "Argument equals three" else: print "if not True" handle(1) handle(2) handle(3)
Die Ausführung des Programms führt zu folgender Ausgabe auf der Systemausgabe:
if not True Argument equals two Argument equals three
Das Schlüsselwort while
erlaubt es uns einen definierten Quelltextbereich
wiederholt auszuführen. Dazu wird nach while
ein Ausdruck angegeben,
welcher als Ergebnis ein Boolean
liefert. Der dann folgende Quelltextblock wird
dann solange wiederholt ausgeführt, bis der Boolean-Ausdruck den Wert False
als Ergebnis liefert.
Das nachfolgende Beispiel zeigt exemplarisch die Verwendung des Schlüsselwortes while
.
i = 0 while i < 5: print(i) i = i + 1 print "Ende"
Die Ausführung des Programms führt zu folgender Ausgabe auf der Systemausgabe:
0 1 2 3 4 Ende
Im Beispiel wird zunächst eine Variable i
mit dem Wert 0
initialisiert.
Im Folgenden wird eine while
-Schleife solange ausgeführt, bis die Annahme i < 5
False
liefert. Zum Abschluss des Programms wird noch Ende
auf der
Systemausgabe ausgegeben.
Dass Schlüsselwort break
liefert eine Möglichkeit eine while
- Schleife
vorzeitig zu verlassen. Trifft der Python-Interprepter innerhalb einer while
-Schleife
auf das Schlüsselwort break
, so wird die while-Schleife
verlassen und
mit der nächsten (der while
-Schleife folgenden) Anweisung fortgesetzt.
Das nachfolgende Beispiel verwendet ein break
um die while
-Schleife
vorzeitig zu verlassen. Die enthaltene if
-Anweisung führt bei einem Wert
von i
größer 2
zu einem break
, was zu einem
vorzeitigen Verlassen der Schleife führt.
i = 0 while i < 5: print(i) if i > 2: break i = i + 1 print "Ende"
Die Ausführung des Programms führt zu folgender Ausgabe auf der Systemausgabe:
0 1 2 3 Ende