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

Dekoratory
Używanie dekoratorów

Funkcje niestandardowe mają szerokie zastosowanie, jednak czasem możesz chcieć dodać dodatkową funkcjonalność do już istniejącej funkcji. Nazywa się to dekoratorem; jest to funkcja zaprojektowana tak, aby rozszerzyć już istniejącą funkcję, stąd nazwa.

Na tym poziomie piece muszą być przygotowane, aby były gotowe do przyrządzania potraw. Użyj dekoratorów, aby open() i close() wywoływały się pomiędzy ładowaniem drewna do pieców.

Guide

Cel

Wypełnij piece opałem i ustaw je tak, aby mogły być przygotowane do gotowania przy użyciu dekoratorów.

Piec ceglanym muszą być przygotowane, aby móc upiec jedzenie na późniejszy wieczór. Piece są wyłączone i puste, wymagają opału, aby je zapalić. Zbierz trochę opału i załaduj go do pieców, aby rozpocząć gotowanie. Możesz to zrobić ręcznie lub przy użyciu funkcji niestandardowej, jednak proces można przyspieszyć za pomocą dekoratorów.

Dekoratory to dodatki, które można dodać do funkcji niestandardowej, aby rozszerzyć jej funkcjonalność na żądanie, bez potrzeby komplikowania jej warunkami.

# Decorator, adds extra functionality to another function def load_wood(func): def load(): player.open() func() player.close() return load # Custom function that can be decorated def add_wood(): player.place("firewood") player.speak("Three logs placed in oven") # Decorate the custom function prep_oven = load_wood(add_wood)

Przejdź do magazynu na dole mapy i zbierz wszystkie cztery (4) wiązki drewna. Następnie udaj się do złotego znaku X i użyj funkcji read() aby sprawdzić notatkę na tablicy, która wyświetla, jakie temperatury powinny zostać ustawione w piecach. Zanotuj informacje z wyskakującego okienka, ponieważ będą potrzebne później.

Następnie udaj się do jasnych znaków X obok pieca i użyj udekorowanej funkcji, aby umieścić opał, na przykład: prep_oven(). Podczas wkładania opału do pieca, udaj się do ciemnych znaków X na kolorowych dywanikach i użyj asynchronicznej funkcji question(), aby ustawić temperaturę pieców.

Funkcja pomocnicza zostanie ustawiona wcześniej, pod nazwą set_temperature(), a Twoja odpowiedź na pytanie zdecyduje, czy temperatura zostanie ustawiona na High czy na Medium. Ustaw temperaturę, pisząc funkcję i odpowiadając na pytanie na podstawie notatki, którą przeczytałeś wcześniej, przy czym każda temperatura zostanie ustawiona zgodnie z odpowiadającym jej kolorowym dywanikiem. Pamiętaj, aby użyć await podczas korzystania z funkcji asynchronicznych, na przykład: await set_temperature()

Gdy przygotujesz i ustawisz wszystkie cztery (4) piece, ukończysz poziom.

Księga Kodów