Python 3.5 – Schleifen
Was sind Schleifen?
Schleifen sind ein elementarer Bestandteil jeder Programmiersprache. Sie sind besonders gut dafür geeignet, wiederkehrende Abläufe zu wiederholen.
Stell dir vor, du möchtest 100-mal den Text "Hallo" auf deiner Website darstellen. Dafür müsstest du 100x den print-Befehl kopieren und einfügen. Das ist ziemlich mühselig. Stattdessen verwenden wir Schleifen (Wiederholungen), um den Programmcode auf nur 3-4 Zeilen zu reduzieren.
Eine Schleife wird solange ausgeführt, solange die Kondition zu "True" evaluiert.
Das folgende Bild soll dir die Funktionsweise von Schleifen noch vereinfachen:

Wir wollen uns in der vorliegenden Lektion ansehen, welche Schleifen es in Python gibt und wie wir damit arbeiten können.
Die while-Schleife
Die while-Schleife in Python folgt einer einfachen Syntax:
while (Kondition):
Statement
Solange die Kondition "Wahr" (True) ist, führe das Statement aus.
Code-Beispiel - while Schleife:
Ein Beispiel für eine while-Schleife könnte folgendermaßen aussehen.
i=10
while (i>0):
print(i)
i = i-1
Dabei wird die while-Schleife so lange ausgeführt, bis die Kondition das Boolean False zurückgibt.
Die for-Schleife
Neben der while Schleife gibt es auch noch die for-Schleife.
Die for-Schleife wird dazu genutzt, über eine Sequenz zu iterieren. Dabei ist die Sequenz oft eine Liste oder ein Dictionary.
Die Syntax der for-Schleife sieht so aus:
for item in Sequenz:
Anweisung(item)
Dabei kann die Variable item beliebig gewählt werden. Wir wollen uns dazu ein Beispiel ansehen.
Code-Beispiel - for-Schleife:
list = [2,3,4]
for number in list:
print(number)
Dieses Konstrukt wird in anderen Programmiersprachen gern als forEach-loop bezeichnet, ist aber in Python der Standard für der for-loop. Dies liegt daran, dass Python eine objektorientierte Programmiersprache ist.
In objektorientierten Programmiersprachen ist der forEach-loop meist deutlich praktischer als der for-loop. In nicht objektorientierten Programmiersprachen werden for-Schleifen gern genutzt, wenn bereits bekannt ist, wie oft die Schleife abgearbeitet werden soll. Dies geht auch in Python, allerdings benötigt man dafür das range-Statement.
Code-Beispiel - forEach Loop mit range-Statement:
for number in range(0,3):
print(number)
Möchte man einen foreach-Loop mit Zählvariable nutzen, gibt es dafür die enumerate-Funktion.
Code-Beispiel - forEach Loop mit Zählvariable:
list = ["a", "b" , "c"]
for x,number in enumerate(list):
print(str(x) + number)
Code-Aufgabe - Jetzt bist du dran:
Deine Aufgabe:
Programmiere deinen Code so, dass das gesamte Alphabet (a-z), zusammen mit der Position des jeweiligen Buchstabens (z.B. "Nr. 2 : Buchstabe c") im Alphabet ausgegeben wird.
- Benutze eine for-Schleife mit zwei Variablen: z.B. nummer und buchstabe
- Deine For-Schleife sollte dabei mit enumerate() durch die Liste "alphabet" gehen
- Gib das Ergebnis der Variablen nummer und buchstabe mit dem print-Befehl aus.
Hinweis: Die folgende Liste des Alphabets kannst du für deinen Code kopieren / einfügen:
alphabet = ['a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z']
Hier kannst du deinen Code eingeben:
Code-Aufgabe - Lösung:
Wenn du nicht weiterkommst, findest du hier die Komplettlösung zu der Aufgabe. Du kannst den folgenden Code in den Online-Editor kopieren & einfügen, um ihn zu testen.
[lp_spoiler title="Spoiler - Lösung anzeigen"]
alphabet = ['a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z']
for nummer, buchstabe in enumerate(alphabet):
print(str(nummer)+ ":" + buchstabe)
[/lp_spoiler]
Zusammenfassung:
In dieser Lektion haben wir gelernt, was Schleifen sind und was wir damit machen können. Wir haben uns die while- und die for-Schleife angesehen und haben auch gelernt, wie man das range-Statement benutzt.
Wir hoffen, du hattest Spaß und wir sehen uns in der nächsten Lektion wieder.