Python #7: Schleifen

Ich habe bereits die Listen und Bedingte Anweisungen vorgestellt, nun möchte ich die Schleifen vorstellen. Mit Schleifen und Bedinge Anweisungen können Listen durchlaufen oder sogar ganz bequem aufgebaut werden.

Es gibt in Python zwei Schleifen, einmal die For-Schleife und einmal die While-Schleife. Beide Schleifen sind Kopfgesteuert, d.h. die Bedingung wird vor der Abarbeitung geprüft.

In anderen Programmier bzw. Scriptsprachen gibt es zusätzlich Fußgesteuerte Schleifen jedoch bei Python nicht („was jetzt nicht schlimm ist“).

Gegeben sei folgende Liste mit Namen:

nun möchten wir diese untereinander Ausgeben. Sicherlich könnten wir mit dem Index auf jedes Element zugreifen und uns einen kurzen vier Zeiler schreiben.

Jedoch ist dieses für ein unbestimmbare Menge an Elementen nicht mehr möglich. Somit benötigen wir ein Konstrukt welches uns erlaubt alle Elemente nacheinander auszugeben ohne das wir vorher wissen müssen wie viele Elemente in der Liste sind.

for – Schleife

Die for Schleife kann hierfür einfach genutzt werden:

Es wird nach dem Befehl „for“ eine neue Variable definiert, hier wähle den Bezeichner „name“ da in der Liste Namen enthalten sind. (Bezeichner sollten immer selbsterklärend sein.) gefolgt von dem Schlüsselwort „in“ und der Liste „namen“. 

Die Ausgabe ist:

Die Zeile ließt sich wie folgt  „Für jeden namen in der Liste namen tue folgendes:“. In der dritten Zeile erfolgt die Ausgabe des Namens mit dem bereits bekannten Befehl „print“. Es hier auf die Einrückung zu achten! 

while – Schleife

Für die while Schleife benötigt man ein definierbares Ende einer Liste. Mit dem Befehl „len(<<LISTE>>)“ können wir die Anzahl der Elemente einer Liste herausfinden somit ergibt sich:

Wie erhalten wiederum die gleiche Ausgabe:

Der Ausdruck in der while Schleife muss immer ein Boolean ergeben (True / False). Solange der Ausdruck True / Wahr ist wird diese Schleife ausgeführt. Sollte man also einmal vergessen die Variable zu incrementieren so erzeugt man sich eine Endlosschleife welche nur durch ein Stoppen des Scriptes abgebrochen werden kann.()

Funktion range

Mit der Funktion „range“ kann man eine Liste aus ganzzahligen Werten erzeugen. Diese Liste hat einen Startwert und einen Endwert.

Wenn man nun eine Liste von Zahlen zwischen 1 und 10 haben möchte so schreibt man dieses wiefolgt:

Wir haben nun eine Liste mit den Zahlen von 1 bis 9 erzeugt. (Achtung nicht 10!)
Auf diese Liste können wir wie aus dem Tutorial Python #3: Listen bekannt mit einem Index zugreifen.

Die Ausgabe ist:

Nun können wir mit einer For Schleife die Zahlen der Liste ausgeben.

Die Ausgabe ist:

Als erstes wird wohl auffallen das der Endwert von 10 nicht ausgegeben wird. 

Parameter

Der Funktion range kann man mehr als nur einen Startwert & Endwert übergeben, es gibt zusätzlich noch einen Parameter für Schritte zwischen den Zahlen.

Hier nun ein Beispiel:

Wir erzeugen nun eine Liste mit den Werten von 1 bis 100 in Schritten von 5 Zahlen. 

Beispiel

Ausgabe von Großbuchstaben  

Am Anfang dieses Kapitels haben wir die for Schleife kennengelernt und als letztes habe ich die Funktion range vorgestellt. Wenn man sich nun die ASCII Tabelle anschaut dann sind die Buchstaben von 65 bis 91 abgebildet. Somit kann man mit range(65, 91) eine Liste von Zahlen 65 bis 90 aufbauen, zusätzlich benötigen wir noch eine Funktion um die Zahl in ein ASCII Character umzuwandeln. 

Die Ausgabe ist nun eine Liste der großgeschrieben Buchstaben von A bis Z:

Schlüsselwort – continue

Mit dem Schlüsselwort continue kann man innerhalb eines Schleifendurchlaufes mit einer Bedingten Anweisung ein Sprung erzeugen.

Die Ausgabe ist:

Man sieht hier das die Schleife von 0 bis 5 durchlaufen wird, jedoch die Ausgabe für die Zahl drei erfolgt nicht. 

Das Schlüsselwort continue funktioniert natürlich auch in einer while Schleife.

Im nachfolgenden Quellcode haben wir mit der while Schleife die Ausgabe aller ungeraden Zahle von 0 bis 19 ausgegeben.

Die Ausgabe ist:

Schlüsselwort – break

Mit dem Schlüsselwort break können wir einen Schleifendurchlauf abbrechen. D.h. anders als bei continue wird die Schleife nicht fortgeführt.

Die Ausgabe:

Die Schleife wird bei der Zahl 3 abgebrochen.

 

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.