Skip to main content

Lektion 2: Wiederholen von Aktionen

Jetzt, da der VR-Roboter mit dem Stift ein Quadrat auf dem Art Canvas Playground gezeichnet hat, lernst du, es für Schleifen zu verwenden und dein Projekt zu vereinfachen. Diese Lektion führt Sie durch die Schritte zum Zeichnen eines Quadrats auf dem Art Canvas Playground mit einer  for-Schleife.

Kunst Leinwand Spielplatz mit einem schwarzen Quadrat darauf gezeichnet. Der VR-Roboter befindet sich in der Mitte des Spielplatzes, in der linken unteren Ecke des Platzes.

Lernergebnisse

  • Identifizieren Sie, wie Sie eine for -Schleife verwenden, um die darin enthaltenen Befehle für eine bestimmte Anzahl von Malen zu wiederholen.
  • Stellen Sie fest, dass die for-Schleife eine Variable "Wert" und eine  Bereichsfunktion enthält, um die Anzahl der Wiederholungen zu identifizieren. 
  • Stellen Sie fest, dass die  Bereichsfunktion einer  for-Schleife angibt, wie oft die Schleife wiederholt werden soll.
  • Stellen Sie fest, dass die  Bereichsfunktion einer for -Schleife ganze Zahlen als Parameter akzeptieren kann.
  • Beschreiben Sie, warum eine for-Schleife in einem Projekt verwendet wird.
  • Beschreiben Sie den Ablauf eines Projekts, das eine for-Schleife enthält.

Projekt umbenennen

  • Wenn das Projekt der vorherigen Lektion noch nicht geladen ist, laden Sie das Projekt Unit3Lesson1.
  • Benennen Sie das Projekt um, indem Sie das Feld Projektname auswählen.
    VR-Symbolleiste mit hervorgehobenem Projektnamen. Der Name im Feld lautet Einheit 3 Lektion 1.
  • Geben Sie den neuen Projektnamen Unit3Lesson2ein und wählen Sie „Speichern“.
    VR-Symbolleiste mit geöffnetem Projektnamendialog. Das Projekt wurde in Einheit 3 Lektion 2 umbenannt und die Schaltfläche Speichern wird durch ein rotes Kästchen hervorgehoben.

Wiederholungsaktionen

Die for-Schleife wird verwendet, um die darin enthaltenen Befehle eine bestimmte Anzahl von Malen zu wiederholen. Die for-Schleife spart Zeit und Mühe beim Erstellen von Projekten, in denen Befehle wiederholt werden. Anstatt sich die Zeit zu nehmen, zusätzliche Befehle in den Arbeitsbereich zu ziehen oder einzugeben oder vorhandene Befehle zu duplizieren, kann die for -Schleife verwendet werden, um Platz und Zeit zu sparen.

In diesem Projekt wird eine  for-Schleife verwendet, um den VR-Roboter zu steuern, um die vier Seiten eines Quadrats zu zeichnen, indem die Befehle viermal wiederholt werden, um eine Seite zu zeichnen.

  • Ändern Sie zunächst das vorherige Projekt, kopieren Sie das Projekt unten oder erstellen Sie ein neues Projekt, das diesem Basisprojekt entspricht. 
def main():
	pen.move(DOWN)
	drivetrain.drive_for(FORWARD, 600, MM)
	drivetrain.turn_for(RIGHT, 90, DEGREES)
	drivetrain.drive_for(FORWARD, 600, MM)
	drivetrain.turn_for(RIGHT, 90, DEGREES)
	drivetrain.drive_for(FORWARD, 600, MM)
	drivetrain.turn_for(RIGHT, 90, DEGREES)
	drivetrain.drive_for(FORWARD, 600, MM)
	drivetrain.turn_for(RIGHT, 90, DEGREES)

 

  • Die wiederholten Befehle in diesem Projekt sind die Befehle drive_for und turn_for . Entfernen Sie die unteren sechs Befehle im Projekt, sodass nur ein drive_for- und ein turn _for-Befehl unter dem Move-Befehl verbleibt und das Projekt wie folgt aussieht: 

    def main():
        pen.move(DOWN)
        drivetrain.drive_for(FORWARD, 600, MM)
        drivetrain.turn_for(RIGHT, 90, DEGREES)
  • Ziehen Sie eine  for-Schleife an das Ende der Hauptfunktion, damit Ihr Projekt so aussieht. Beachten Sie, dass die  for-Schleife automatisch einen  Wartebefehl ausfüllt. Entfernen Sie nicht den  Wartebefehl, um sicherzustellen, dass sich der VR-Roboter korrekt verhält.

    def main():
        pen.move(DOWN)
        drivetrain.drive_for(FORWARD, 600, MM)
        drivetrain.turn_for(RIGHT, 90, DEGREES)
    
        for repeat_count in range(10):
            wait(5, MS)
  • Damit die  for-Schleife die Drivetrain-Befehle wiederholen kann, um eine Seite des Quadrats zu zeichnen, müssen sich diese Befehle innerhalb der  for-Schleife befinden, was durch Einrückung angezeigt wird. Fügen Sie zwei Zeilen zwischen der for -Schleife und dem wait -Befehl hinzu, um Platz für die Drivetrain -Befehle zu schaffen. Das gleiche Projekt wie oben, mit zwei Leerzeilen zwischen dem for-Befehl und dem wait-Befehl.
  • Um als Nächstes die Drivetrain-Befehle innerhalb der Schleife für zu verschieben, kopieren und fügen Sie die Befehle unter der Schleifenüberschrift für ein, markieren Sie die Befehle und ziehen Sie die Befehle drive_for und turn_for zwischen die Schleifenüberschrift und den Befehl wait oder kopieren und fügen Sie sie aus dem unten stehenden Projekt ein.
def main():
	pen.move(DOWN)
	
	für Wert im Bereich(10):
		drivetrain.drive_for(FORWARD, 600, MM)
		drivetrain.turn_for(RIGHT, 90, DEGREES)
		wait(5, MS)
  • Stellen Sie sicher, dass die Befehle innerhalb der for-Schleife richtig eingerückt sind, und verwenden Sie die graue Linie auf der linken Seite als Leitfaden, der angibt, welche Befehle sich innerhalb der for-Schleife befinden

Zur Kenntnisnahme

Einrückung ist in Python sehr wichtig. Die Einrückung von Befehlen bestimmt, wie ein Projekt ausgeführt wird. Im Falle einer  for-Schleife werden die darin eingerückten Befehle als Teil der Schleife ausgeführt. Sie können die Zeilen links von den Befehlen als visuelle Anleitungen dafür verwenden, wie Befehle in einer Schleife gruppiert werden. 

Das Projekt von oben, wobei der Text "Führungslinie" und Pfeil auf die hellgraue Linie zeigen, die die korrekte Einrückung von Befehlen innerhalb einer for-Schleife anzeigt. Eine rote Klammer um die letzten drei Befehle zeigt an, dass sie gleichmäßig eingerückt und innerhalb der for-Schleife ausgerichtet sind.

Fehler bei der Einrückung können sich auf Ihren Projektablauf auswirken und dazu führen, dass Ihr Projekt nicht wie beabsichtigt ausgeführt wird. Ein Mangel an Einbuchtung oder ungleichmäßige Einbuchtung, wie hier gezeigt, sollte vermieden werden, damit Ihr Code wie beabsichtigt funktioniert.

Zwei häufige Beispiele für falsche Einrückungen in einer for-Schleife nebeneinander, mit großen roten X über ihnen, um zu betonen, dass sie falsch sind. Das Projekt auf der linken Seite ist das Projekt aus dieser Lektion, aber es gibt keine Einrückung innerhalb der for-Schleife. Das Projekt auf der rechten Seite ist das Projekt aus dieser Lektion, aber mit den drei unteren Befehlen, die alle unterschiedlich eingerückt sind.

VEXcode VR kann Sie auffordern, Einrückungsfehler zu beheben, bevor Sie Ihr Projekt ausführen können. Diese Fehler können in der Druckkonsole identifiziert werden, sodass Sie das Problem leicht beheben und Ihr Projekt ausführen können.Das Projekt aus dieser Lektion wird links angezeigt. Die Druckkonsole in VEXcode VR wird rechts angezeigt, wobei eine rote Fehlermeldung auf einen unerwarteten Einzug rechts verweist. Ein großer roter Pfeil erstreckt sich von der Fehlermeldung bis zu der Zeile im Projekt, die den Fehler enthält.

 

 

  • Jetzt, da sich die Drivetrain-Befehle zum Zeichnen einer Seite des Quadrats innerhalb der Schleife befinden, kann der Parameter der  Bereichsfunktion eingestellt werden. Um ein Quadrat zu zeichnen, müssen vier Seiten gezeichnet werden. Um die Befehle viermal zu wiederholen, stellen Sie den Parameter der Bereichsfunktion im for-Schleifenkopf auf "4", damit ein VR-Roboter alle vier Seiten eines Quadrats zeichnet.
    Das Projekt aus dieser Lektion, wobei der Parameter der Bereichsfunktion in der for-Schleife von 10 auf 4 geändert wurde.

Zur Kenntnisnahme

Die Bereichsfunktion im for-Schleifenheader kann ganze Zahlen akzeptieren. Dezimalzahlen (oder Floats) funktionieren nicht als Parameter für eine for-Schleife. Der Standardparameter für die  Bereichsfunktion ist '10'. 

Für Schleifenbefehl mit der ganzen Zahl 10 im Parameter.
  • Wählen Sie die Schaltfläche "Open Playground", um den Art Canvas Playground zu öffnen , wenn er noch nicht geöffnet ist, und starten Sie das Projekt.
    VEXcode VR Toolbar mit der Schaltfläche Open Playground in der oberen rechten Ecke, die mit einem roten Kästchen hervorgehoben ist.
  • Beobachten Sie, wie der VR-Roboter auf dem Art Canvas Playground viermal vorwärts fährt und nach rechts abbiegt , um mit dem Stift ein Quadrat zu zeichnen.

    Kunst Leinwand Spielplatz mit einem schwarzen Quadrat darauf gezeichnet. Der VR-Roboter befindet sich in der Mitte des Spielplatzes, in der linken unteren Ecke des Platzes.

Wählen Sie die Schaltfläche Weiter um mit dem Rest dieser Lektion fortzufahren.