Variablen
Eine Variable ist ein Name, den du verwendest, um auf einen Speicherplatz zu verweisen, an dem ein Wert gespeichert ist. Einfacher ausgedrückt kann man sie sich als eine Box vorstellen, die einen Wert speichert. Alle Variablen bestehen aus drei Teilen: einem Namen, einem Datentyp und einem Wert. In der Abbildung unten gibt es drei Variablen mit unterschiedlichen Datentypen:
Source: <https://developer.mozilla.org/en-US/docs/Learn/JavaScript/First_steps/Variables>
Die Variable name enthält die Zeichenkette Bob, die Variable winner enthält den Wert True
und die Variable score enthält den Wert 35.
In Python wird eine Variable erstellt, wenn ihr zum ersten Mal ein Wert zugewiesen wird. Wenn du eine
Variable n im Code verwendest, der du vorher keinen Wert zugewiesen hast, kommt es zu folgender
Fehlermeldung:
>>> # Versuche eine undefinierte Variable abzurufen
... n
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'n' is not defined
Sobald einer Variablen ein Wert zugewiesen wurde, kann sie verwendet und dieser Wert auch verändert werden (es sei denn, sie ist unveränderlich - mehr darüber erfährst du im Abschnitt Datenstrukturen).
from microbit import *
meineAnzahl = 0
while True:
if button_a.was_pressed():
meineAnzahl = meineAnzahl + 1
print("Die Taste wurde " + str(meineAnzahl) + " mal gedrückt.") # Ausgabe auf der REPL
sleep(2000)
Hier haben wir die Variable meineAnzahl benutzt, um mitzuzählen, wie oft die taste A gedrückt wird.
Kannst du sagen, was dieser Codeschnipsel sonst noch macht?
Die sleep()-Funktion werden wir oft verwenden, da in einer Endlosschleife aufgrund der Verarbeitungsgeschwindigkeit
des Prozessors oft unerwartete Ergebnisse zu bewundern sind. Um sie richtig einzusetzen, musst du dein Programm
so planen, dass die Verzögerungen, die durch den Aufruf dieser Funktion ausgelöst werden, zu der jeweils richtigen
Zeit passieren. Das musst du genau planen!
Übungsaufgaben
Was passiert, wenn wir die
sleep()-Funktion weglassen?Gib in der REPL nacheinander folgende Befehle ein: a=1 ; b=2; print(a+b); a=‘1‘ ; b=‘2‘ ; print(a+b) . Erkläre die unterschiedlichen Ergebnisse.