Im heutigen Blogartikel werden wir uns die Art der for Schleife ansehen, die man häufig in Python Zählschleife oder auch Zählerschleife nennt. Wie sie genau funktioniert und wofür sie sehr nützlich sein kann, wirst du in den folgenden Zeilen erfahren.
Inhaltsverzeichnis
1. Die range()-Funktion
Im vergangenen Beitrag haben wir uns bereits mit der ersten Anwendungsvariante der for Schleife beschäftigt. Diese hat es uns ermöglicht, über ein iterierbares Objekt zu laufen. Wie die for Schleife nun in Variante 2 als Zählerschleife funktioniert, sehen wir uns direkt an einem Beispiel an.
Der Aufbau der for Schleife bleibt in diesem Fall gleich. Wir tauschen lediglich das iterierbare Objekt durch die sogenannte range()-Funktion aus. Der range()-Funktion können wir innerhalb der runden Klammern Werte übergeben. Übergeben wir dieser beispielsweise eine Ganzzahl wie etwa die 10, erzeugt die Funktion ein iterierbares Objekt für uns, das durchlaufen wird und die Werte von 0 bis 10 enthält.
Dabei handelt es sich um die Zahlen 0, 1, 2, 3, 4, 5, 6, 7, 8 und 9. Die 10 ist dabei nicht mehr inkludiert, wie wir es an der Ausgabe erkennen können:
2. range() mit Start- und Endwert
Jetzt ist es allerdings häufig der Fall, dass man nicht beim Wert 0 beginnen, sondern die „range“ sowohl vom Startpunkt als auch vom Endpunkt aus selbst festlegen möchte. Sodass man beispielsweise anstatt eines iterierbaren Objekts von 0 bis 10 ein iterierbares Objekt von 5 bis 10 erzeugen kann.
Anders gesagt möchte man also bei Wert a starten und bis zum Wert b gehen. Der Endwert b wäre in unserem Fall also die 10. Als Startwert übergeben wir der range()-Funktion vor dem Endwert den Wert 5:
Die Funktion range() erzeugt nun ein iterierbares Objekt mit den Werten 5, 6, 7, 8 und 9 für uns. Führen wir das Programm nun aus, sehen wir, dass genau das tatsächlich passiert:
Der Startwert (5) ist also immer inkludiert und Teil des iterierbaren Objekts, während der Endwert 10 exkludiert ist.
3. Die Schrittweite von range()
Dieser range()-Funktion könnte man nun am Ende sogar noch einen dritten Wert übergeben, mit welchem man die Schrittweite definiert. Standardmäßig ist diese mit dem Wert 1 festgelegt. Das bedeutet: Übergibt man lediglich einen oder zwei Werte an die range()-Funktion, wird die Schrittweite immer automatisch von der Funktion range() auf 1 gesetzt. Wenn wir also die 1 als dritten Wert übergeben, passiert das Gleiche wie zuvor.
Geben wir hingegen als dritten Wert die zwei an, liegt die Schrittweite der range()-Funktion bei zwei. Nach einem Startwert von 5 folgt also nicht die 6, sondern die 7, da in zweier Schritten gezählt wird. Danach folgt die Zahl 9, womit wir auch schon den Endwert erreicht haben:
Diese Art der for Schleife können wir also gut als Zählerschleife bzw. auch in Python Zählschleife genannt, verwenden, wenn wir eine Wiederholung eines bestimmten Code-Blocks nicht von einer Bedingung abhängig machen möchten. Stattdessen eignet sich diese Variante, wenn wir wissen, dass wir eine gewisse Anzahl an Wiederholungen fest vorgeben möchten und das unabhängig von jeglicher Bedingung.
Mit der range()-Funktion hast du nun wieder eine weitere Funktion in Python kennengelernt. Wie du sehen kannst, ist das Konzept der Funktionen in Python essenziell. Genau deshalb werden wir uns das Thema Funktionen und auch wie man so eine Funktion selbst programmieren kann, im nächsten Blogbeitrag im Detail ansehen.