Fejlett Python fejlesztési tanfolyam
Fejezet
>
Szint
Aszinkron/Megvár
Üzenet létrehozása
Előfordulhat, hogy azt szeretnéd, hogy a Python kódod csak egy adott feltétel teljesülése után fussanak le, ahelyett, hogy egyszerre futna le az egész kód. Ezt aszinkron függvények használatával érheted el. Az ilyen típusú függvény neve az "asynchronous" szó lerövidítése, és az await kifejezés hozzáadásával hívjuk meg őket egy függvény előtt.
Ebben a szinten megtanuljuk, hogyan írjunk saját üzeneteket, és hogyan jelenítsük meg őket felugró ablakokként. Az await hozzáadásával képesek leszünk megállítani a kód futását, lehetővé téve, hogy elolvasd az általad írt üzenetet, és csak a felugró ablak bezárása után folytasd a kód futását.

Célkitűzés
Címkézd fel a jeleket, hogy üzenetet jelenítsenek meg await/async függvények segítségével.
A raktárban lévő jeleknek nincsenek címkéik, az anyagokat nemrég helyezték el, és még nem állították be őket. Érdemes lenne üzeneteket írni minden címkére, és összeadni az általad átvizsgált elemeket az await/async write() függvény segítségével.
Menj a világító X jel felé, közelíts a ládákhoz, és használd a speak() függvényt a ládák tartalmának beazonosításához. Négy (4) konstans létezik, egy-egy ládához, ezek: green_crate, blue_crate, red_crate és orange_crate, amelyek megfelelnek a ládák előtt elhelyezett színes szőnyegeknek.
Miután beazonosítottad egy láda tartalmát, használd a write() függvényt, hogy üzenetet írj a táblára. A ládákban négy (4) különböző típusú zöldség található: "potato", "onion", "corn" és "carrot"; írd ki őket a függvénnyel, például így: await player.write("potato").
Az await kód hozzá van adva, hogy a függvény async függvényként legyen megjelölve. Az ilyen típusú függvények párhuzamosan futtathatók a kódod egyéb folyamataival. Ez hasznos, amikor meg akarod állítani a kódolást, és várni szeretnél valami esemény bekövetkeztére, például egy gomb megnyomására vagy egy online parancsra. Ezért van szükség az await parancsra; a write() függvény esetében ez azt jelenti, hogy a program megáll, hogy megjelenítsen egy üzenetet.
Miután minden ládára kiírták az üzeneteket, menj a raktár végén lévő arany X jelhez, és számold össze, hány elem van minden ládában. Hozz létre egy listát, amely tartalmazza az összes konstansot, és használd a write() függvényt egy üzenet megírásához a szint befejezéséhez.