Python - Kontrollstrukturen

Fach Fach

Klasse 10

Autor Wimmer96

Veröffentlicht am 01.11.2018

Schlagwörter

Python

Zusammenfassung

Python ist eine Programmiersprache, die vor allem für die Entwicklung von Web Applikationen genutzt wird. Teil dieser Referate soll es sein einen einfachen Überblick in die Einführung von Phython zu schaffen.

Kontrollstrukturen
Die Kontrollstrukturen kontrollieren den Ablauf des Programms. Sie verändern den Kontext von Variablen und Bestimmen die Reihenfolge der Anweisungen, die im Programm ausgeführt werden sollen.
In Python gibt es folgende Kontrollstrukturen:
• einfache Zuweisungen, Statements
• Blöcke
• Schleifen: -while - for
• Fallunterscheidungen: if / elif / else
Bedingte Ausdrücke
• Funktionen
Blöcke
Blöcke dienen dazu, dem Python Interpreter anzuzeigen, welche Zeilen Code logisch zusammengehören. Dies zum Beispiel erforderlich, wenn es darum geht Schleifen, Fallunterscheidugen oder Funktionen zu schreiben. Ein Block besteht immer aus einer Reihe an Anweisungen, die alle die selbe Einrückung in der Datei oder im Prompt haben. Ein neuer Block wird immer durch einen Doppelpunkt in der vorherigen Zeile eingeleitet!!
Block1
Block1: Block2 :
Block3
Block3 Block2
Block2
Block1
Werden innerhalb eines Blocks Leerzeichen und Tabs vermischt, so spuckt der Interpreter eine Fehlermeldung aus, im schlimmsten Fall kann sich sogar die Logik des Programmes ändern!

Fallunterscheidung – If Anweisung
Sehr häufig soll ein Programm nicht einfach nur eine Liste von Anweisungen abarbeiten, sondern in unterschiedlichen Situationen unterschiedliche Arbeitsschritte ausführen.
Um diese Funktionalität zur Verfügung zu stellen bietet Python Fallunterscheidungen an, die über eine besondere Syntax definiert werden.
if-Anweisung
if Bedingung: Anweisungen
Bedingung
Die Bedingung muss ein logisch auswertbarer Ausdruck sein. Falls der Wert der Bedingung True ist (siehe: Wahrheitswerte) werden die Anweisungen innerhalb des Blocks ausgeführt. Ist der Wert der Bedingung False, dann werden die Anweisungen übersprungen und die Anweisungen nach dem Ende des Blocks werden sofort ausgeführt.
Fallunterscheidung – elif
Beispiel: Elif-Statements:
if zahl == 1: print(“Eins!”)
elif zahl == 2: print(“Zwei!”)
elif zahl == 3: print(“Drei!”)
Oft reicht eine einzige Fallunterscheidung nicht aus, zum Beispiel, wenn man eine Zahl auf mehrere Werte hin prüfen möchte. Um dies zu ermöglichen lässt sich ein if-Statement um beliebig viele elif-Statements erweitern, die der Reihe nach abgearbeitet werden. Elif steht dabei für „else if“ (oder ob).
Fallunterscheidung – else
Am Ende jeder if-elif-Kette lässt sich ein sogenanntes else-Statement anhängen, das immer dann betreten und ausgeführt wird, wenn keine der Bedingungen erfüllt worden ist, also die Bedingung jeder if- und jede elifAnweisung False ergeben hat.
Beispiel: Else-Statement
if zahl < 0:
print (“Zahl ist kleiner als Null!”)
elif zahl == 0: print(“Zahl ist genau Null!”)
else: print(“Zahl ist größer als Null!”)

Eine if-Anweisung besteht aus:
• genau einem if-Statement
• keinen oder beliebig vielen elif-Statements
• keinem oder einem else-Statement

Schleifen – while Schleife
Eine Schleife ermöglicht es einen Code-Block, den sogenannten Schleifenkörper, mehrmals hintereinander auszuführen.
while Bedingung: Anweisungen
Bedingung
Die Bedingung muss ein auswertbarer logischer Ausdruck sein. Falls der Wert der Bedingung True (siehe: Wahrheitswerte) ist, werden die Anweisungen solange ausgeführt, bis der Wert der Bedingung False ist.
Anweisungen
Die Anweisungen stellen den Körper der Schleife dar. Als solches müssen sie als ein eingerückter Block angegeben werden.

For Schleife
Eine weitere Methode eine Schleife zu realisieren ist die for-Schleife, die über eine Sequenz iteriert. Iterierbare Sequenzen, sind z.B. Listen und Strings, Tupel und Dictionarys.
for Variable in Sequenz: Anweisungen
Sequenz
Die Sequenz, die durchlaufen werden soll, muss ein sogenanntes iterierbares Objekt sein, dessen Elemente als eine Sequenz abgerufen werden können. Solche Datentypen sind unter Anderem:
• list (Liste)
• str (String)
• range (Funktion)
For Schleife - Iterrator
Als Zählvariable dem sog. Itterator wird eine neue Variable deklariert, die bei jedem Schleifendurchgang den Wert des aktuelle Element der Sequenz beinhaltet. Achtung: Wird als Zählvariable eine Variable verwendet, die vor der Schleife schon benutzt wurde, so wird ihr Wert überschrieben!

For Schleife – range Funktion
In vielen Fällen möchte man einfach nur einen Codeblock eine bestimmte Anzahl von Durchläufen ausführen lassen. Um dies einfach zu bewerkstelligen gibt es die eingebaute range-Funktion, die eine Liste von Zahlen erzeugt:
Die range-Funktion kann auf drei Arten aufgerufen werden.
• range(stop)
• range(start,stop)
• range(start,stop,schritt)
• Mit einem Argument (“stop”) wird von 0 bis ausschließlich dem Wert des Argumentes gezählt
• Mit zwei Argumenten (“start”,“stop”) wird von einschließlich dem Wert des ersten Argumentes bis ausschließlich dem Wert des zweiten Argumentes gezählt
• Wird ein drittes Argument angegeben (“schritt”), so wird statt in Einer-Schritten in Schritten gezählt, die diesem Argument entsprechen
• Wird das dritte Argument als negative Zahl angegeben, so wird herabgezählt
• Alle Argumente müssen ganze Zahlen sein
Schleifen – Unterbrechung und Abbruch
Zur vorzeitigen Unterbrechung eines Schleifendurchlaufes, oder zum vorzeitigen Abbruch der gesamten Schleife, stellt Python zwei Schlüsselwörter zur Verfügung:
break und continue
break beendet die Schleife sofort, das Programm fährt nach dem Ende des Schleifenkörpers fort
continue beendet den aktuellen Schleifendurchgang ab und fährt sofort mit dem nächsten Schleifendurchgang fort. Im Falle einer for-Schleife erhält die Zählvariable den nächsten Wert