Coding for KidsCoding for Kids
Livelli CreativiSfideGuida per Insegnanti
Vota per le funzionalità
Corso Avanzato di Sviluppo Python
Capitolo
>
Livello

Async/Await
Impostare una domanda

Obiettivo

Raccogli vari materiali da cucina e preparali per la cottura impostando delle “domande”.

Esistono vari materiali da cucina e alimentari che devono essere preparati per un uso e consumo successivo. Per facilitare questo puoi impostare una question(), questa è una funzione async simile a write() ma, invece di mostrare un messaggio statico, permette di visualizzare una domanda con le opzioni “Sì” e “No”.

Per impostare la funzione question() devi anche definire una funzione personalizzata per gestire le condizioni. Questa funzione deve avere async scritto all'inizio per definirla come funzione async. All'interno, la funzione question() viene assegnata a una variabile e la funzione ha await scritto davanti proprio come le altre funzioni async. Come argomento, la funzione question() accetta una stringa con la domanda che intendi porre.

async def question_function(): answer = await player.question("Question you would like to ask") if answer: # Actions to take if answer is Yes else: # Actions to take if answer is No

All'interno della funzione avrai un'istruzione if che determina quale azione compiere se la risposta è vera o falsa. Le funzioni personalizzate per le domande saranno impostate nell'editor del codice e ti permetteranno di raccogliere e/o posizionare più elementi da una singola fonte.

Gli elementi in questione da preparare in cucina sono: "water", "ice", "meat" e "potato". Questi elementi devono essere raccolti e posizionati in diverse aree della cucina. Il "ice" deve essere posizionato all'interno di un congelatore, il "water" deve essere messo nella pentola, mentre "meat" e "potato" vanno posizionati in forni differenti.

Per prima cosa, raggiungi il segno X dorato nella stanza a destra e usa la funzione personalizzata await dispencer() indicata nell'editor del codice. Dirigi lo sguardo verso il ghiacciaio e utilizza la funzione due (2) volte. Essa ti porrà una domanda e devi rispondere Yes per collect() "ice" e No per collect() "water".

Una volta raccolti entrambi gli elementi, recati al segno X scuro accanto a te, davanti al congelatore, e utilizza la funzione place() per depositare il "ice" all'interno del congelatore. Ad esempio: player.place("ice"). Successivamente, dirigiti verso il segno X chiaro di fronte a un sacco e utilizza la funzione collect() per prendere una "potato" in questo modo: player.collect("potato").

In seguito, recati al segno X scuro accanto alla pentola centrale e place() il "water" che hai raccolto, come segue: player.place("water"). Una volta fatto, dirigiti al segno X chiaro sopra di esso, davanti al frigorifero, e raccogli "meat", in questo modo: player.collect("meat").

Ora che hai raccolto sia "meat" che "potato", recati ai due (2) segni X dorati nella stanza a sinistra e usa la funzione personalizzata await oven() scritta nell'editor. Per la domanda, nel forno a destra, devi scegliere la risposta per cuocere al forno la "potato" e, per il forno a sinistra, devi scegliere la risposta per grigliare la "meat" per completare il livello.

Libro del Codice