LBotics.at

Kommentare

# Erklärungen und Informationen zum Code

Mit einer # werden in Python Kommentare, also beliebiger Text, der nicht intepretiert und ausgeführt wird, eingeleitet.

Einbinden von Modulen

include modulname

Mit include werden Python-Module, das sind Python-Dateien mit vorgefertigtem Code eingebunden.

Das Python-Module time

include time

Dieses Python-Modul stellt vieles zur Verfügung, was im Zusammenhang mit Zeitabläufen, aktueller Zeit, Zeitmessungen, Zeitbrechnungen, ... benötigt wird.

time.sleep(time)

Mit der Funktion sleep(time) wird die Ausführung des Skripts für die angegebene Zeitspanne in Sekunden genau an der Stelle angehalten, an der diese Funktion aufgerufen wird. Diese Funktion darf nicht bei zeitkritischen Aufgabenstellungen verwendet werden, da die weitere Ausführung des Codes erst nach Ablauf der angegebenen Zeitspanne fortgesetzt wird.

time: 0, 1, ... (Zeit in Sekunden, positive Dezimalzahlen von 0 beginnend)

Variablen

In Python wird bei einer Variable vor der ersten Verwendung weder der Name, noch der Datentyp festgelegt. Benötigt man in Python eine Variable, so kann der gewünschte Variablenname einfach in den Code geschrieben werden, ohne, dass die Variable zuvor definiert oder ein Datentyp festgelegt wurde. Im Code sieht das wie folgt aus:

i = 6
Das zuweisende Istgleich =

Mit einem einfachen Istgleich = wird in Python eine Zuweisung festgelegt, die immer von rechts nach links. Das, was auf der rechten Seite steht, wird dem zugewiesen, was auf der linken Seite des Istgleich steht.

Variablennamen

Bei Variablennamen ist in Python Folgendes zu beachten:

  • In Variablennamen dürfen keine Sonderzeiten (ä,ü,ß, ...) und keine Leerzeichen vorkommen.
  • Variablennamen dürfen nicht mit einer Zahl beginnen, können aber nach dem ersten Zeichen Zahlen beinhalten.
  • Das einzig erlaubte Zeichen zur optischen Trennung in Variablennamen ist der Unterstrich _.
  • Reservierte Wörter in der Sprache, sogenannte Schlüsselwörter, wie if, else, True, False, for, while, ... dürfen nicht als Variablennamen verwendet werden.
Datentypen

Obwohl in Python der Datentyp einer Variable nicht explizit festgelegt wird, so sind Variablen dennoch von einem bestimmten Typ, nachdem ihnen ein Wert zugewiesen wurde. Wurde einer Variable a mit a = 24 eine ganze Zahl zugewiesen, so ist diese Variable danach von Typ int.

Drei häufig verwendete Datentypen sind:

  • int: ganze Zahlen, z. B. -235
  • float: Dezimalzahlen (bzw. genauer: Gleitkommazahlen, das Dezimaltrennzeichen ist ein Punkt), z. B. 24.2534
  • string: Zeichenketten, z. B. "Hallo, ich bin ein mBot2 Roboter!"
Strings

Text wird in Python in Strings (deutsch: Zeichenketten) abgelegt. Im Code werden die Zeichen in einem String zwischen zweifachen Anführungszeichen geschrieben. Wird einer Variable ein String zugewiesen, so ist diese Variable vom Typ string.

str_text = "Hallo ich bin mBot2!"
Verknüpfen von Strings

Als Verknüpfungsoperator für Strings wird in Python ein + verwendet. Damit können zwei Strings zu einem zusammengefügt werden.

str_vorname = "Max"
str_nachname = "mBot2"
str_name = str_vorname + " " + str_nachname
Konvertieren von Zahlenwerten in Strings

Wenn der Wert einer Variable vom Typ int oder float ausgegeben oder angezeigt werden soll, muss dieser zuvor in einen String konvertiert werden. Dazu steht in Python die Funktion str(zahl) zur Verfügung.

float_zahl = 23.5263
str_ausgabe = "Zahl = " + str(float_zahl)
Entscheidungsabfagen

Mit einer if-Abfrage kann die weitere Ausführung von Code basierend auf einer Bedingung gesteuert werden. Bei einer if-Abfrage steht nach dem Schlüsselwort if eine Bedingung. Ist die Bedingung erfüllt, so werden Anweisungen in dem darauffolgenden Code-Block, der eingerückt geschrieben werden muss, ausgeführt.

...
while True:
Anweisung 1
Anweisung 2
Anweisung 3
...

Sollen Anweisungen ausgeführt werden, wenn die Bedingung nicht erfüllt ist, so schreibt man diese in einem weiteren eingerückten Code-Block hinter dem Schlüsselwort else.

...
if Bedingung:
   Anweisung 1
   Anweisung 2
   Anweisung 3
  ...
else:
   Anweisung 1
   Anweisung 2
   Anweisung 3
  ...
Verknüpfungsoperatoren in Bedingungen

Ob eine Bedingung erfüllt ist oder nicht, entscheidet über die weitere Ausführung des Code. In Bedingungen kommen Vergleichsoperatoren zum Einsatz um zwei Werte miteinader zu vergleichen.

Operator Funktion Beispiel Erklärung
== vergleichendes Istgleich if a==5: Hat a den Wert 5?
!= ungleich if b!=7: Hat b einen anderen Wert als 7?
< kleiner if c<3: Ist der Wert von c kleiner als 3?
> größer if d>7 Ist der Wert von d größer als 7?
<= kleiner gleich if e<=10: Ist der Wert von e kleiner oder gleich 10?
>= größer gleich if f>=2: Ist der Wert von f größer oder gleich 2?
Verknüpfen von Bedingungen

Möchte man mehrere Bedingungen miteinander verknüpfen, so gibt es dazu die Möglichkeit des logischen UND und des logischen ODER.

Verknüpfung Funktion Beispiel Erklärung
and logisches und if a==5 and b==7: Hat a den Wert 5 und hat b den Wert 7?
Die Gesamtbedingung ist dann erfüllt, wenn die erste Bedingung (a==5) UND die zweite Bedinung (b==7) erfüllt ist!
or logisches oder if c==3 or d==7: Hat c den Wert 3 oder hat d den Wert 7?
Die Gesamtbedingung ist dann erfüllt, wenn die erste
Bedingung (c==3) ODER die zweite Bedingung (d==4) erfüllt ist, oder beide Bedingungen erfüllt sind.

 

Schleifen
Endlosschleifen mit while

Da ein Python-Skript grundsätzlich linear von der ersten bis zur letzten ausgeführt und dann beendet wird, muss man Code innerhalb einer einer Endlosschleife platziert werden, der laufend wiederholt ausgeführt werden soll.

...
while True:
Anweisung 1
Anweisung 2
Anweisung 3
...

Eine Endlosschleife wird mit while True: eingeleitet. Alle Code-Zeilen die innhalb der Schleife wiederholt ausgeführt werden sollen, müssen eingerückt geschrieben werden. Üblich ist das Einrücken mit 4 Leerzeichen.

Die while-Scheife mit Zählvariable und Laufzeitbedingung

Soll ein Code-Block mehrmals ausgeführt werden, so wird dieser innerhalb einer Schleife platziert und angeben, wie oft die Ausführung der Zeilen in diesem Block wiederholt werden soll. Dazu benötigt man eine Zählvariable und eine Laufzeitbedingung, mit der anhand des aktuellen Werts der Zählvariable überprüft wird, ob die Schleife noch weiterlaufen soll, oder nicht.

Für die meisten Arten von Schleifen wird in einer Programmiersprache festgelegt:

  1. eine Zählvariable mit einem Startwert
  2. eine Laufzeitbedingung
  3. eine Vorschrift, wie sich der Wert der Zählvariable nach einem Schleifendurchlauf ändern soll
int_i = 1

while int_i<=100:
Anweisung 1
Anweisung 2
Anweisung 3
. . .
int_i = int_i + 1

In diesem Codebeispiel sind die einzelnen Teile, die bei einer while-Schleife mit einer Zählvariable und einer Laufzeitbedingung benötigt werden, farblich hervorgehoben.

  • Zunächst wird mit int_i = 1 die Zählvariable festgelegt und ihr der Startwert zugewiesen.
  • Hinter dem Schlüsselwort while steht die Laufzeitbedingung int_i<=100 - die Anweisungen in der Schleife werden also solange wiederholt hintereinander ausgeführt, solange der Wert der Zählvariable int_i kleiner oder gleich 100 ist.
  • Im Anchluss daran folgen eingerückt! alle Code-Zeilen, die innerhalb der Schleife wiederholt ausgeführt werden sollen, während die Schleife läuft.
  • In der letzten Anweisung wird festgelegt, dass der Wert der Zählvariable int_i um 1 erhöht werden soll.