Coding for KidsCoding for Kids
Kreative NiveauerUdfordringerLærervejledning
Stem på funktioner
Avanceret Python Udviklingskursus
Kapitel
>
Niveau

Async/Await
Asynkron gennemgang

Mål

Dokumenter produktionen af vinflasker ved brug af asynkrone funktioner ved at tjekke kvoten og afslutte iblødsætning af vinbær.

Vinflaskeproduktionen skal opfyldes for at sikre, at vinkælderen kan producere nok flasker til at blive lagret. For at opnå dette skal vinbær iblødsættes for at sikre, at alt bliver forarbejdet til gæring og omdannet til vin.

Gå først til det mørke X-mærke uden tæppe foran et papir. Denne note indeholder information om den produktkvote, der skal produceres, samt notater om, hvilke bær der er blevet iblødsat. Brug read()-funktionen for at tjekke kvoten og notér, hvilke vinbærværdier der er, og gem dem i en variabel kaldet quota.

Når du ved, hvad der kræves, skal du gå til de lyse X-mærker og vende dig mod kasserne for at tjekke, hvor meget produkt der er klar til forarbejdning. Brug read()-funktionen på begge for at verificere indholdet af de elementer, der er klar. Opret en variabel kaldet wine_berries og læg de mængder, du læste ved de to X-mærker, sammen.

Mængden af færdigt produkt vil ikke være nok til at opfylde kvoten, så gå til det gyldne X-mærke i nederste højre hjørne og vend dig mod sækkene. Brug collect()-funktionen til at samle bær fra sækkene og fortsæt til de mørke X-mærker over tæpper.

Der er fire (4) krukker, der iblødsætter bær til brug i vin. I dokumentet står der, hvilke krukker der er klar til at blive samlet, og hvilke krukker der har brug for at få bær iblødsat. Brug question()-funktionen til at tjekke, om du vil samle iblødsatte vinbær eller iblødsætte bær i krukken. På de grønne og gule tæpper med mørke X-mærker skal du samle bær, og på de lilla og blå tæpper med mørke X-mærker skal der placeres bær.

Den nødvendige question()-funktion for at erhverve produktet er skrevet i kodeeditoren og hedder soaking_pot() :

async def soaking_pot(): answer = await player.question("Collect berries instead of soaking them?") if answer: player.collect("wine berries") else: player.place("berries")

Når vinbærrene er blevet samlet, skal du gå til det gyldne X-mærke til venstre ved siden af bærfade og bruge place()-funktionen til at indsætte de "wine berries", du har samlet. Tilføj 100 pund produkt til den variabel, du oprettede wine_berries, det svarer til 50 for hvert af de produkter, du tidligere har samlet. Dette gøres således: wine_berries+=100

Gå til de mørke X-mærker med røde og orange tæpper. På det røde tæppe X-mærke skal du bruge write()-funktionen og tilføje mængden af wine_berries, du har til rådighed indtil nu, således: player.write("There are %d pounds of product finished" % (wine_berries))

På det orange tæppe X-mærke skal du bruge write()-funktionen til at skrive ned det produkt, der endnu ikke er færdigt. For at fuldføre niveauet, træk wine_berries fra quota under skrivingen for at bestemme de resterende varer, således: player.write("There are %d pounds of product Remaining" % (quota-wine_berries))

Kodebog