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

Разширени класове
Презаписване на метод

Цел

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

Има масло, което можете да използвате за готвене на зеленчуци, но първо трябва да бъде бутлирано за по-лесна употреба. Използването на класове и създаването на обекти е ефективен метод за постигане на това, както беше в предишното ниво. От друга страна, има и начини по-ефективно да се използва наследяването на обекти в клас, като например детският клас да пренапише функциите в родителския клас.

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

В горния код детският клас пренаписва функцията label_bottle() от родителския клас, за да препише етикетите на бутилките. Това също така ви позволява да зададете персонализирано съобщение, използвайки async функции.

За начало, вземете всичките четири (4) празни бутилки от полето, след това, след като ги съберете, отидете до тъмните X марки и създайте обекти, използвайки класовете.

Има четири (4) вида масло, които трябва да бъдат бутлирани; те съответстват на цветните килими пред машините: olive_oil се бутлира върху жълтия килим, avocado_oil – върху зеления килим, canola_oil – върху синия килим, а vegetable_oil – върху червения килим.

Създайте обекти за всяко от маслата, напишете им етикетите и активирайте функциите на детския клас label_bottle() и fill_bottle(), например:

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

Всеки от етикетите трябва да съдържа името на съответното масло с главна буква, както следва: "Olive Oil", "Avocado Oil", "Canola Oil" и "Vegetable Oil".

След като бутлирате маслата, отидете до светлата X марка пред чувала и използвайте функцията collect() да вземете "onion" от чувала. След това отидете до златната X марка и използвайте маслото за готвене на лука, като ги съхраните заедно в списък, наречен ingredients, както следва: ingredients = ["Olive Oil", "onion"]. Използвайте функцията place() със списъка, за да сготвите съставките.

Накрая поставете останалите масла в списък, наречен oils, както следва: oils = ["Avocado Oil","Canola Oil","Vegetable Oil"]. Отидете до светлата X марка на лилавия килим, обърнете се към шкафа и използвайте функцията place() със списъка с масла, за да съхраните артикулите в шкафа и да завършите нивото.

Книга с Код