Python fejlesztési kurzus
Fejezet
>
Szint

Szótárak használata
Szótárak bejárása

Cél

Gyűjtsd össze a terepen található összes anyagot, és készíts leltárt minden összegyűjtött tárgyról, mielőtt azokat a kijelölt tárolókba helyeznéd.

Egy vihar tönkretette a híd melletti előestát, szétszórva az anyagokat mindenfelé – biztos vagyok benne, hogy ezeket az anyagokat később hasznosítani fogod. Készíts leltárt minden felvett tárgyról, és helyezd el őket a túloldalban lévő raktárban.

Először gyűjtsd össze a terepen szétszórt törmeléket, melyek a következők: "branches" , "boulders" és "planks". Miután összegyűjtötted az összes tárgyat, helyezd őket egy materials nevű szótárba, és add hozzá mind a három (3) anyag nevét és mennyiségét.

materials = {} materials["branches"] = number of branches collected ......

Miután minden a szótárban van, menj a világos X jelhez, és készíts leltárt az összegyűjtött anyagokról egy for ciklus és a speak() függvény segítségével. Mivel a szótárak eltérnek a listáktól, nem ugyanúgy tudsz rajtuk végigiterálni, mint egy sorozaton, helyette a szótárak saját módszert kínálnak ennek megvalósítására.

for name, number in materials.items(): player.speak("There were %d %s collected" % ( number, name))

Két változó, ebben az esetben a name és a number beállításával elérheted a szótár két mezőjét. Az in kifejezés, a szótár neve és az items() függvény használatával ugyanolyan módon járhatsz végig a szótáron, mint egy sima for ciklussal.

Miután elkészítetted a leltárt, sétálj a sötét X jelhez, és tárold el az összegyűjtött anyagokat a szótárban a tárolókba a place() függvény segítségével, például így: player.place(materials["branches"]). Három (3) sötét X jel található: a bal oldali tárolóba helyezd a "branches"-t, a középsőbe a "boulders"-t, és a jobb oldali tárolóba a "planks"-t. Helyezd el minden anyagot a megfelelő pozícióba a szint teljesítéséhez.

Kódkönyv