Lernziele
- Microbit-Online-Editor: Sie wissen,
- wie Sie ein Programm auf den Microbit laden können,
- wie Ihnen während des Schreibens mögliche Befehle vorgeschlagen und erklärt werden,
- dass Sie die Referenz auf der linken Seite im Editor kennen und gebrauchen können.
import
-Statement: Sie kennen den Unterschied zwischen diesen beiden Arten, etwas aus einem Modul zu importieren:
import microbit
from microbit import *
while
-Schleife: Wir haben die while-Schleife kennengelernt oder repetiert.
Aufgabe: Ein pochendes Herz
Versuchen Sie Ihren Microbit dazu zu bringen, ein pochendes Herz anzuzeigen. Nutzen Sie dazu Ihr Wissen über Python und folgende Befehle (alle innerhalb der microbit-Bibliothek!):
- microbit.Image.HEART ist das Bild eines Herzens
- microbit.display.show()
- microbit.sleep()
Mit diesem Beispiel lernen wir nun einige Werkzeuge und Kniffs in Python kennen.
Der Editor, die gute Fee
Sie profitieren hier jetzt von einer modernen Entwicklungsumgebung, die Ihnen während dem Tippen verschiedene Möglichkeiten und Erklärungen gibt. Wenn Sie also nicht wissen, was ein Befehl tut, schreiben Sie den Befehl einfach nochmal hin und der Editor erklärt Ihnen den Befehl automatisch!
Für die Befehle des Microbits haben Sie zudem auf der linken Seite eine Referenz mit Erklärungen, Codebeispielen und einer Suchfunktion!
import microbit
und from microbit import *
Das Importstatement import microbit
lädt das gesamte Modul als ein Objekt microbit
. Sie können so die Funktionen und Variabeln im Modul gebrauchen, indem Sie den Modulnamen schreiben und dann mit .
den Inhalt der nächsten Hierarchiestufe anzeigen - ganz ähnlich wie bei Ordnern und Dateien auf Ihrem Computer.
Das ist schön und gut, so müssen Sie aber jedes Mal den Modulnamen angeben (z. B. microbit.display.show()
). Sie können das import
-Statement umschreiben, um den gesamten Inhalt des Moduls direkt in Ihr Hauptprogramm zu importieren: from microbit import *
. Dieser Syntax sagt auf Deutsch übersetzt:
from microbit
: aus dem Modulmicrobit
import *
: importiere alles
So werden alle Funktionen und Variablen direkt in die oberste Ebene Ihres Hauptprogramms importiert (das “global frame”), sodass sie ohne den Modulnamen microbit
verwendet werden können (z. B. display.show()
).
”Solange”-Schleife mit while
Eine lange Wiederholungsschleife mit for
ist nicht sehr elegant, weil wir ja nicht wissen, wie lange das Spiel dauert. Da gibt es eine schönere Lösung…
Die while
-Schleife in Python ermöglicht es, einen Block von Anweisungen wiederholt auszuführen, solange ein Wahrheitstest True
ist. Die Bedingung funktioniert genau gleich, wie bei der if
-Selektion.
while wetter == "raining":
# Auszuführende Anweisungen, solange die Bedingung wahr ist
dance()
Die while
-Schleife ist nützlich, wenn man vor der Ausführung nicht genau wissen kann, wie oft der Codeblock ausgeführt werden muss.
Endlosschleife
Beim Onlineeditor von Microbit wird oft folgendes Konstrukt vorgeschlagen:
while True:
# Anweisungen des Programs
Das ist eine Schleife, deren Wahrheitstest per Definition immer True
ist. Also ist es eine Endlosschleife, die nie aufhört.
Lösungen
Nicht sehr elegante Lösung mit
for
# Imports go at the top from microbit import * # Wir machen sehr lange das Gleiche, indem wir einfach die Zahl sehr gross machen for i in range(10000): # Wir zeigen das grosse Herz display.show(Image.HEART) # Warten eine halbe Sekunde sleep(500) # Zeigen das kleine Herz display.show(Image.HEART_SMALL) # Und warten nochmal eine halbe Sekunde sleep(500)
Endlosschleife mit
while
# Imports go at the top from microbit import * # Wir machen endlos das Gleiche while True: # Wir zeigen das grosse Herz display.show(Image.HEART) # Warten eine halbe Sekunde sleep(500) # Zeigen das kleine Herz display.show(Image.HEART_SMALL) # Und warten nochmal eine halbe Sekunde sleep(500)