Coding for KidsCoding for Kids
Poziomy KreatywneWyzwaniaPrzewodnik dla Nauczycieli
Głosuj na funkcje
Zaawansowany kurs programowania w Pythonie
Rozdział
>
Poziom

Zaawansowane klasy
Przesłanianie metod

Cel

Butelkuj olej, aby ugotować mięso poprzez tworzenie obiektów z przeciążonymi metodami.

Istnieje pewna ilość oleju, którego możesz użyć do gotowania warzyw, ale najpierw musi zostać butelkowany dla ułatwienia użycia. Używanie klas i tworzenie obiektów będzie skuteczną metodą osiągnięcia tego celu, podobnie jak w poprzednim poziomie. Istnieją jednak też sposoby bardziej efektywnego wykorzystania dziedziczenia obiektów w ramach klasy, takie jak nadpisywanie funkcji klasy rodzic przez klasę dziecko.

# Parent Class class oil_bottle: label = "" async def label_bottle(self): await player.read() # Child Class class fill_bottle(oil_bottle): def fill_bottle(self): player.place("empty bottle") player.collect("oilbottle") async def label_bottle(self): await player.write(self.label)

W powyższym kodzie klasa dziecko nadpisuje funkcję label_bottle() z klasy rodzic, aby przepisać etykiety na butelkach. Dzięki temu możesz również ustawić niestandardowy komunikat przy użyciu funkcji asynchronicznych.

Na początek zbierz wszystkie cztery (4) puste butelki znajdujące się na polu, a po ich zebraniu udaj się do ciemnego znaku X i utwórz obiekty, korzystając z klas.

Istnieją cztery (4) rodzaje oleju do butelkowania, które odpowiadają kolorowym dywanikom przed maszynami: olive_oil jest butelkowany na żółtym dywanie, avocado_oil na zielonym, canola_oil na niebieskim, a vegetable_oil na czerwonym.

Utwórz obiekty dla każdego z olejów, napisz ich etykiety i aktywuj funkcje klasy dziecko label_bottle() i fill_bottle(), na przykład:

olive_oil = fill_bottle() olive_oil.label = "Olive Oil" olive_oil.label_bottle() olive_oil.fill_bottle()

Każda etykieta powinna zawierać nazwę oleju zapisaną wielką literą, odpowiednio: "Olive Oil", "Avocado Oil", "Canola Oil" oraz "Vegetable Oil".

Po butelkowaniu olejów udaj się do jasnego znaku X przed workiem i użyj funkcji collect(), aby pobrać "onion" z worka. Następnie udaj się do złotego znaku X i użyj oleju do ugotowania cebuli, umieszczając je razem na liście o nazwie ingredients, w następujący sposób: ingredients = ["Olive Oil", "onion"]. Użyj funkcji place() z tą listą, aby ugotować składniki.

Na koniec umieść pozostałe oleje na liście o nazwie oils, w następujący sposób: oils = ["Avocado Oil","Canola Oil","Vegetable Oil"]. Udaj się do jasnego znaku X na fioletowym dywanie, stan naprzeciw szafki i użyj funkcji place() z listą olejów, aby umieścić przedmioty w szafce i ukończyć poziom.

Księga Kodów