Читать книгу Routineaufgaben mit Python automatisieren - Al Sweigart - Страница 72
For-Schleifen und die Funktion range()
ОглавлениеWhile-Schleifen werden durchlaufen, solange die Bedingung True ist. Was aber machen Sie, wenn Sie einen Codeblock eine bestimmte Anzahl von Malen ausführen wollen? Das können Sie mit der Anweisung for und der Funktion range() erreichen.
Eine for-Anweisung hat die Form for i in range(5) und weist die folgenden Bestandteile auf:
Das Schlüsselwort for
Einen Variablennamen
Das Schlüsselwort in
Einen Aufruf der Methode range(), wobei bis zu drei Integer übergeben werden können
Einen Doppelpunkt
Einen eingerückten Codeblock (die for-Klausel), der in der nächsten Zeile beginnt
Um uns eine for-Schleife in Aktion anzusehen, schreiben wir das Programm five-Times.py:
print('My name is')
for i in range(5):
print('Jimmy Five Times (' + str(i) + ')')
Die Ausführung dieses Programms können Sie sich auf https://autbor.com/fivetimesfor/ ansehen. Der Code in der for-Klausel wird fünfmal ausgeführt. Beim ersten Mal hat die Variable i den Wert 0. Der Aufruf von print() in der Klausel gibt daher Jimmy Five Times (0) aus. Nach einem kompletten Durchlauf durch den Code in der Klausel wird die Ausführung wieder am Anfang der Schleife fortgesetzt und i um 1 erhöht. Die Funktion range(5) ruft fünf Iterationen durch die Klausel hervor, da i nacheinander auf 0, 1, 2, 3 und 4 gesetzt wird. Die Variable wird erhöht, bis die nächste Erhöhung den an range() übergebenen Wert erreichen würde. Das Flussdiagramm für fiveTimes.py sehen Sie in Abb. 2–13.
Abb. 2–13 Das Flussdiagramm für fiveTimes.py
Wenn Sie das Programm ausführen, gibt es fünfmal Jimmy Five Times jeweils gefolgt von dem Wert von i aus, bevor es die Schleife verlässt.
My name is
Jimmy Five Times (0)
Jimmy Five Times (1)
Jimmy Five Times (2)
Jimmy Five Times (3)
Jimmy Five Times (4)