Coding for KidsCoding for Kids
Kreative LevelHerausforderungenLehrerhandbuch
Für Funktionen abstimmen
Fortgeschrittener Python-Entwicklungskurs
Kapitel
>
Stufe

Fortgeschrittene Klassen
Vergleichsüberladung

Ziel

Überprüfen und etikettieren Sie Sendungen korrekt, indem Sie Vergleichsüberladung verwenden.

Das Versanddach verfügt über einige Weinfässer, die bereit sind, in die Geschäfte gebracht zu werden, jedoch müssen sie zunächst gekennzeichnet und vorbereitet werden, damit die Arbeiter sie problemlos auswählen und versenden können. Um dies zu tun, müssen Sie Vergleichsüberladung verwenden, ähnlich wie bei der im vorherigen Kapitel gelernten Operatorüberladung. Sie müssen eine Klasse überladen, diesmal mit Vergleichsoperatoren.

Es gibt drei (3) Aufträge im Dock, jeder mit zwei (2) Fässern. Jeder Auftrag hat ein Schild, das das Gewichtsverhältnis der Fässer im Auftrag veranschaulichen soll. Im Editor gibt es eine Klasse namens barrel, die es Ihnen ermöglicht, Vergleichsüberladung zu verwenden. Es gibt auch drei (3) Funktionen im Editor: less_than(), greater_than() und equal_to(). Diese Funktionen werden verwendet, um das Gewichtsverhältnis auf den Schildern darzustellen.

Beginnen Sie, indem Sie zu den dunklen und hellen X-Markierungen auf den roten Teppichen gehen und sich den Fässern zuwenden. Verwenden Sie die read()-Funktion, um den Namen des Weins im Fass sowie das Gewicht des Fasses zu ermitteln, zum Beispiel: await player.read(). Erstellen Sie Objekte für das dunkle und das helle Fass, indem Sie die Klasse barrel verwenden, und fügen Sie die Informationen hinzu, die Sie aus der read()-Funktion erhalten. Sobald die Objekte erstellt sind, erstellen Sie ein weiteres Objekt, das beide Objekte vergleicht. Zum Beispiel:

red_barrel_dark = barrel("Wine name", 000) red_barrel_light = barrel("Wine name", 000) red_barrel_compare = red_barrel_dark < red_barrel_light

Achten Sie darauf, den Namen des Weins im Fass-Klassenobjekt genau so zu schreiben, wie er in der Nachricht angezeigt wird, wenn Sie read() verwenden.

Erstellen Sie die Objekte unter Verwendung der Namenskonventionen entsprechend dem Teppich und der X-Markierung der Farbe. Für den roten Teppich verwenden Sie beim Vergleich der Fässer den <-Operator, um zu überprüfen, ob das dunkle Fass ein geringeres Gewicht als das helle Fass hat. Um diesen Abschnitt abzuschließen, gehen Sie zur goldenen X-Markierung auf dem roten Teppich und wenden Sie sich dem Schild zu. Verwenden Sie die Funktion less_than() mit dem Vergleichsobjekt, um das Gewichtsverhältnis der Fässer darzustellen, zum Beispiel: less_than(red_barrel_compare) .

Gehen Sie als Nächstes zu den dunklen und hellen X-Markierungen auf dem grünen Teppich und wiederholen Sie denselben Vorgang. Verwenden Sie die read()-Funktion an den dunklen und hellen X-Markierungen und erstellen Sie entsprechende Objekte mit diesen Informationen. Für das Vergleichsobjekt des grünen Teppichs verwenden wir diesmal den >-Operator, um zu überprüfen, ob das dunkle Fass ein höheres Gewicht als das helle Fass hat. Gehen Sie zur goldenen X-Markierung auf dem grünen Teppich und wenden Sie sich dem Schild zu. Verwenden Sie die Funktion greater_than() mit dem Vergleichsobjekt, um das Gewichtsverhältnis der Fässer darzustellen, zum Beispiel: greater_than(green_barrel_compare) .

Gehen Sie zu den dunklen und hellen X-Markierungen auf dem blauen Teppich und wiederholen Sie denselben Vorgang. Verwenden Sie die read()-Funktion an den dunklen und hellen X-Markierungen und erstellen Sie entsprechende Objekte mit diesen Informationen. Für das Vergleichsobjekt des blauen Teppichs verwenden wir diesmal den ==-Operator, um zu überprüfen, ob das dunkle Fass das gleiche Gewicht wie das helle Fass hat. Gehen Sie zur goldenen X-Markierung auf dem blauen Teppich und wenden Sie sich dem Schild zu. Verwenden Sie die Funktion equal_to() mit dem Vergleichsobjekt, um das Gewichtsverhältnis der Fässer darzustellen, zum Beispiel: equal_to(blue_barrel_compare) .

Sobald alle Aufträge etikettiert wurden, gehen Sie zur goldenen X-Markierung auf dem orangefarbenen Teppich am Dock-Ausgang. Wenden Sie sich dem Schild zu und verwenden Sie die write()-Funktion, um niederzuschreiben, was sich auf jedem Auftrag befindet. Schreiben Sie die Namen der Fässer entsprechend der von Ihnen erstellten Objekte, zum Beispiel beim roten Teppich: red_barrel_dark.name , red_barrel_light.name . Machen Sie dies für alle sechs Fässer, um das Level abzuschließen.

Codebuch