Coding for KidsCoding for Kids
Креативни НиваПредизвикателстваРъководство за Учители
Гласувайте за функции
Курс по усъвършенствано разработване с Python
Глава
>
Ниво

Декоратори
Използване на декоратори

Потребителските функции имат широк спектър от приложения, но понякога може да искате да добавите допълнителна функционалност към вече съществуваща функция. Това се нарича декоратор, функция, предназначена да разшири съществуваща функция, отсюде и името.

За това ниво печките трябва да бъдат подготвени, за да бъдат готови за приготвяне на храна. Използвайте декоратори, за да извикате open() и close() между зареждането на дърва в печките.

Guide

Цел

Попълнете пещите с дърва и ги настройте, така че да могат да бъдат подготвени за готвене чрез използване на декоратори.

Керамичните пещи трябва да бъдат подготвени, за да може да изпечете храна за по-късно вечерта. Пещите са изключени и празни и се нуждаят от дърва, за да бъдат запалени. Вземете няколко дърва и ги натоварете в пещите, за да можете да започнете готвенето. Това може да бъде направено ръчно или чрез използване на потребителска функция, но процесът може да бъде ускорен чрез използване на декоратори.

Декораторите са добавки, които могат да бъдат прикрепени към потребителска функция, за да разширят нейния функционалност при поискване, без да е необходимо тя да бъде усложнявана с допълнителни условия.

# 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)

Отидете до склада в долната част на картата и съберете всичките четири (4) връзки дърва. Отидете до златния X знак и използвайте функцията read() за да проверите бележката на бара, която показва на какви температури трябва да бъдат настроени пещите. Запомнете информацията от изскачащия прозорец, тъй като ще ви бъде необходима по-късно.

След това отидете до светлите X знаци до пещта и използвайте декорираната функция, за да поставите дървата, по следния начин: prep_oven(). Докато поставяте дървата в пещта, отидете до тъмните X знаци върху цветните килими и използвайте асинхронната функция question() за да настроите температурата на пещите.

Поддържащата функция ще бъде предварително настроена, наречена set_temperature(), и вашият отговор на въпроса ще определи дали температурата ще бъде настроена на High или на Medium. Настройте температурата, като напишете функцията и отговорите на въпроса с помощта на бележката, която прочетохте по-рано, като всяка температура съответства на цвета на определен килим. Не забравяйте да използвате await, когато извиквате асинхронни функции, например: await set_temperature()

След като подготвите и настроите всичките четири (4) пещи, ще завършите нивото.

Книга с Код