Coding for KidsCoding for Kids
Kreative NivåerUtfordringerLærerveiledning
Stem på funksjoner
Avansert Pythonutviklingskurs
Kapittel
>
Nivå

Async/Await
Asynkron gjennomgang

Mål

Dokumenter produksjon av vinflasker ved å bruke Async-funksjoner ved å sjekke kvoten og fullføre bløtleggingen av vinbær.

Vinflaskeproduksjonen må oppfylles for å sikre at kjelleren kan produsere nok flasker til å bli på lager. For å oppnå dette må vinbær bløtlegges slik at alt blir behandlet for gjæring og forvandlet til vin.

Gå først til det mørke X-merket uten teppe foran et papir; denne notisen inneholder informasjon om produktkvoten som må produseres, samt notater om hvilke bær som har blitt bløtlagt. Bruk read()-funksjonen for å sjekke kvoten og notere hva vinbærverdiene er, og lagre dem i en variabel kalt quota.

Når du vet hva som kreves, gå til de lyse X-merkene og vend deg mot kistene for å sjekke hvor mye produkt som er klart for behandling. Bruk read()-funksjonen på begge for å verifisere innholdet i de elementene som er klare. Opprett en variabel kalt wine_berries og legg sammen mengdene du leste ved begge X-merkene.

Mengden ferdig produkt vil ikke være nok til å møte kvoten, så gå til det gylne X-merket nederst til høyre og vend deg mot sekkene. Bruk collect()-funksjonen for å hente bær fra sekkene, og fortsett deretter til de mørke X-merkene over teppene.

Det er fire (4) potter som bløtlegger bær for bruk i vin, og dokumentet viser hvilke potter som er klare til å bli hentet, og hvilke potter som trenger bær til bløtlegging. Bruk question()-funksjonen for å sjekke om du vil samle inn bløtlagte vinbær eller bløtlegge bær i potten. På de grønne og gule teppene med mørke X-merker må du samle inn bær, og på de lilla og blå teppene med mørke X-merker må bær plasseres.

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ærene er samlet inn, gå til det gylne X-merket på venstre side ved siden av bærtønner og bruk place()-funksjonen for å legge inn de "wine berries" du samlet. På variabelen du opprettet, wine_berries, legg til 100 pund med produkt, det vil si 50 for hvert av produktene du tidligere samlet. Dette gjøres slik: wine_berries+=100

Gå til de mørke X-merkene med røde og oransje tepper. På det røde teppe-X-merket, bruk write()-funksjonen og legg til mengden wine_berries du har tilgjengelig så langt, slik: player.write("There are %d pounds of product finished" % (wine_berries))

På det oransje teppe-X-merket, bruk write()-funksjonen for å skrive ned produktet som ennå ikke er ferdig. For å fullføre nivået, trekk wine_berries fra quota mens du skriver, for å beregne de gjenværende elementene, slik: player.write("There are %d pounds of product Remaining" % (quota-wine_berries))

Kodebok