Kontrolle#
Einführung#
Mit Control in Python können Sie dem Roboter mitteilen, wann er warten, wann er Aktionen wiederholen, wie er Entscheidungen treffen und wann er das Projekt beenden soll.
Nachfolgend finden Sie eine Liste der verfügbaren Steuerelemente, einschließlich Methoden und wichtiger Python-Schlüsselwörter:
wait– Unterbricht das Projekt für eine bestimmte Zeit.for– Wiederholt den Code für jedes Element in einer Sequenz.if– Führt Code aus, wenn eine Bedingung wahr ist.if/else– Führt je nach Bedingung unterschiedlichen Code aus.if/elif/else– Überprüft mehrere Bedingungen der Reihe nach.while– Wiederholt den Code, solange eine Bedingung wahr ist.break– Verlässt die Schleife sofort.stop_program– Beendet das laufende Programm.pass– Platzhalter, der verwendet wird, wenn keine Aktion erforderlich ist.
Warten#
wait pausiert für eine bestimmte Zeitspanne, bevor zur nächsten Codezeile übergegangen wird.
Usage:wait(time, units)
Parameter |
Beschreibung |
|---|---|
|
Die Wartezeit, als positive ganze Zahl oder Dezimalzahl. |
|
Die Einheit, die die Wartezeit darstellt: |
# Build Used: Super Code Base 2.0
def main():
# Turn right for one second
drivetrain.turn(RIGHT)
wait(1, SECONDS)
drivetrain.stop()
# Start threads — Do not delete
start_thread(main)
für#
for wiederholt eine Reihe von Aktionen eine bestimmte Anzahl Male. for kann verwendet werden, um Elemente in Listen, Tupeln, Wörterbüchern, Mengen, Zeichenketten oder für eine bestimmte Anzahl von Schleifen mit range zu durchlaufen.
Nutzung:
for value in expression_list:
pass
Komponenten |
Beschreibung |
|---|---|
|
Eine temporäre Variable, die das aktuelle Element in der Iteration speichert. |
|
Die Sammlung von Elementen, die durchlaufen werden (z. B. Liste, Zeichenkette, Bereich). |
# Build Used: Super Code Base 2.0
def main():
# Move in a square path
for index in range(4):
drivetrain.drive_for(FORWARD, 100, MM)
drivetrain.turn_for(RIGHT, 90)
# Start threads — Do not delete
start_thread(main)
Wenn#
if den eingerückten Codeblock ausführt, wenn die Bedingung True ist.
Verwendung:
if condition:
pass
Komponenten |
Beschreibung |
|---|---|
|
Ein Ausdruck oder eine Variable, die bei der Ausführung der Anweisung geprüft wird. Ist sie wahr |
# Build Used: Super Code Base 2.0
def main():
# Turn when the bumper is pressed
while True:
if bumper.is_pressed():
drivetrain.turn_for(RIGHT, 90)
wait(0.1, SECONDS)
# Start threads — Do not delete
start_thread(main)
if/else#
if und else bestimme, welcher eingerückte Codeblock ausgeführt wird, je nachdem, ob die Bedingung True oder False ist.
Verwendung:
if condition:
pass
else:
pass
Komponenten |
Beschreibung |
|---|---|
|
Ein Ausdruck oder eine Variable, die bei der Ausführung der Anweisung geprüft wird. Ist sie wahr |
# Build Used: Super Code Base 2.0
def main():
# Turn when the bumper is pressed
while True:
if bumper.is_pressed():
drivetrain.turn(RIGHT)
else:
drivetrain.stop()
wait(0.1, SECONDS)
# Start threads — Do not delete
start_thread(main)
if/elif/else#
Die if/elif/else Struktur wählt anhand der Bedingungen aus, welcher eingerückte Codeblock ausgeführt wird:
ifseinen Block ausführt, wenn die BedingungTrue.elifprüft zusätzliche Bedingungen nur dann, wenn alle vorherigen Bedingungen falsch sind.False. Es können mehrereelifAnweisungen verwendet werden.elseführt seinen Block nur dann aus, wenn keine der vorherigen BedingungenTrueist.
Verwendung:
if condition:
pass
elif condition:
pass
else:
pass
Komponenten |
Beschreibung |
|---|---|
|
Ein Ausdruck oder eine Variable, die bei der Ausführung der Anweisung geprüft wird. Die erste Bedingung, die wahr ist |
# Build Used: Super Code Base 2.0
def main():
# Change the LED while turning
drivetrain.turn(RIGHT)
while True:
if drivetrain.get_heading() < 120:
bumper.set_color(OFF)
elif drivetrain.get_heading() < 240:
bumper.set_color(RED)
else:
bumper.set_color(GREEN)
wait(0.2, SECONDS)
# Start threads — Do not delete
start_thread(main)
während#
while führt den Code so lange wiederholt aus, wie die Bedingung Trueist. Sie kann auch wie eine „Forever“ True als Bedingung verwendet, oder wie eine „Warte-bis“-Schleife, indem man not zur Bedingung hinzufügt, wie in den folgenden Beispielen gezeigt.
Verwendung:
while condition:
pass
Komponenten |
Beschreibung |
|---|---|
|
Ein Ausdruck oder eine Variable, die vor jeder Iteration überprüft wird. Ist sie |
# Build Used: Super Code Base 2.0
def main():
# Turn when the bumper is pressed
while True:
if bumper.is_pressed():
drivetrain.turn(RIGHT)
else:
drivetrain.stop()
wait(0.1, SECONDS)
# Start threads — Do not delete
start_thread(main)
# Build Used: Super Code Base 2.0
def main():
# Turn the other direction when the bumper is pressed
drivetrain.turn(LEFT)
while not bumper.is_pressed():
wait(0.2, SECONDS)
drivetrain.turn(RIGHT)
# Start threads — Do not delete
start_thread(main)
brechen#
break verlässt eine Schleife sofort. break kann verwendet werden, um Schleifen zu verlassen, die sonst endlos laufen würden.
Nutzung:
break
Parameter |
Beschreibung |
|---|---|
Dieses Schlüsselwort hat keine Parameter. |
# Build Used: Super Code Base 2.0
def main():
# Stop turning after pressing the bumper
while True:
drivetrain.turn(RIGHT)
if bumper.is_pressed():
break
wait(0.2, SECONDS)
drivetrain.stop()
bumper.set_color(RED)
# Start threads — Do not delete
start_thread(main)
Programm stoppen#
stop_program beendet ein laufendes Projekt.
Usage:stop_program()
Parameter |
Beschreibung |
|---|---|
Diese Methode hat keine Parameter. |
# Build Used: Super Code Base 2.0
def main():
# Stop the project after pressing the bumper
while True:
drivetrain.turn(RIGHT)
if bumper.is_pressed():
break
wait(0.2, SECONDS)
stop_program()
# Start threads — Do not delete
start_thread(main)
passieren#
pass ist ein Platzhalter für zukünftigen Code und kann verwendet werden, um Fehler in leeren Schleifen, Bedingungen und Funktionen zu vermeiden.
Nutzung:
pass
Parameter |
Beschreibung |
|---|---|
Dieses Schlüsselwort hat keine Parameter. |
if condition:
pass
def function():
pass