Python&Pygame/Python-Tutorial 3 - Anweisungen

Aus Scientia
Wechseln zu: Navigation, Suche
Python-Tutorial - Kleine Einführung Schwierigkeitsgrad Stern.png
Autor Silence
Thematik Python
Vorraussetzungen Programme: keine

Fähigkeiten: keine

Andere Teile Kleine Einführung I - Strings

Kleine Einführung II - Variablen
Kleine Einführung III - Anweisungen


Allgemein Anweisungen

Nachdem wir uns angesehen haben, was man mit Variablen alles anstellen kann, und uns damit ausgiebig beschäftigt haben, wenden wir uns nun einem etwas interessanteren Thema zu: Die Anweisungen...

Was sind Anweisungen? Es gibt in Python 3 Anweisungen die if, for und while

Was die Anweisungen können, werden Sie noch früh genug erfahren. Beginnen wir gleich mit der If-Anweisung


If-Anweisung I

Die If-Anweisung prüft, ob etwas "True", also Wahr ist... wenn dies der Fall ist, wird der If-Block ausgeführt. Ist dies nicht der Fall, wird der Else-Block ausgeführt. Jedoch musst ich an dieser Stelle sagen, dass der Else-Block optional zu sehen ist!!

Naja, ich will mich hier auch gar nicht zu lange bei der Theorie aufhalten und werde gleich mal ein kleines Beispiel beschreiben, zuvor aber noch die Syntax (Grundgerüst):

if <Bedingung>: # der : ist wichtig, damit Python erkennt, dass die If-Anweisung über mehrere Zeilen geht
    <Anweisung>
elif <Bedingung>: # wenn If nicht zutrifft, schaut Python, ob das elif zutrifft, dann wird dies durchgeführt
    <Anweisung>
else: # wenn If nicht stimmt/ False ist und elif auch, dann wird else ausgeführt
    <Anweisung>

Die Parameter elif und else sind optional zu sehen, sprich sie können vorhanden sein, müssen aber nicht.

Ich werde mal demonstrieren, wie das ganze Funktioniert:

if 2 >= 3:
    print 2, 'ist größer als oder gleichgroß wie', 3 # man könnte die Zahlen genauso in den String reinschreiben ;) 
                                                 #ich werde das hier nicht tun, weil ich es einfach anschaulicher finde so
else:
    print 2, 'ist nicht größer oder gleichgroß wie', 3
 
# Was >= (größergleich) bedeutet werde ich nun nicht erläutern.
# Ich möchte nun aber noch den Parameter elif erklären, darum moddeln wir das Script 
# noch etwas um:
 
if 2 > 3:
    print 2, 'ist größer wie', 3
elif 2 == 3: # genauso groß wie
    print 2, 'ist gleichgroß wie', 3
elif 2 >= 3: # größergleich
    print 2, 'ist größer oder gleichgroß wie', 3
elif 2 <= 3: # kleiner gleich
    print 2, 'ist kleiner oder gleichgroß wie', 3
 
# Wie wir nun gesehen haben, kann der elif Parameter öfters verwendet werden. 
# Außerdem haben wir gesehen, dass der else Parameter genauso optional ist wie die elif Anweisung.
# Wer will, kann das ganze noch durch ein x = 2 und y = 3 ersetzen ;)
 
# Um nochmal zu verdeutlichen, dass man kein else oder elif 
# benötigt, noch ein Beispiel:
 
if 2 < 4:
    print 2, 'ist kleiner als', 4
# ich könnte aber genauso schreiben:
 
if 2 < 4: print 2, 'ist kleiner als', 4

Einschub: Einrückung

Wie ihr vielleicht schon bemerkt habt, fange ich relativ viele neue Zeilen an und rücke oft einige Zeilen ein. Vielleicht habt ihr euch auch schon gefragt, wieso ich das mache!(?) Vielleicht haben einige von euch auch schon gefragt, ob man das nicht einfach lassen kann bzw. ob ich das einfach willkürlich mache ;)

Nein, es hat alles sein System! Wie ihr schon bemerkt habt, geben wir Python keine Zeichen, wann und wo eine If-Anweisung anfängt und wann sie aufhört. Bei vielen Programmiersprachen wird das mit {} (Klammern) oder mit einem End festgeleg,; Python jedoch erkennt es wenn man einen Leerzeichen davor macht oder einfach einmal Einrückt (zur Information: Einrücken = Einmal Tabulator drücken);

Naja, ich will wieder mal nicht viel reden sondern vielmehr Python reden lassen ;)

>>> x = 0 # ich gebe x den Wert 0, um ihn später abzurufen
>>> 	print x # Es reicht hier, wenn ich nur ein Leerzeichen stehen hätte.
 
  File "<pyshell#24>", line 1
    print x
   ^
IndentationError: unexpected indent
>>> print x # Hier nochmal der Beweis, dass x doch einen Wert hat ;)
0
 
####################
x = 0
if x == 1:
	print 'x ist 1 ^^'
    else:
 
  File "<pyshell#28>", line 3
    else:
 
^
IndentationError: unindent does not match any outer indentation level
#Hier könnte ihr nochmal das gleich sehen, nur diesmal mit der If-Anweisung!

Wie wir nun sehen konnten, ist es sehr wichtig WIE (viel) wir einrücken und WANN wir es tun. Vielleicht werden sich nun einige fragen, was das nun für Vorteile bringt:> Der Code, der geschrieben wird, ist sehr leicht lesbar, nicht nur für andere, sonder auch für den Schreiber selbst.