Coding for KidsCoding for Kids
Kreatív SzintekKihívásokTanári Útmutató
Szavazzon a funkciókra
Fejlett Python fejlesztési tanfolyam
Fejezet
>
Szint

Haladó listák
Halmaz létrehozása

Célkitűzés

Rendezze a fűszereket megfelelő kategóriákba, és helyezze el őket a polcokon Sets segítségével.

Számos fűszer található egy szekrényben, melyek mind használatra készen állnak, de rendezetlenek és nehezen hozzáférhetőek. Ezeket megfelelően kell elosztani a mellette lévő, már kiürített üres polcokon.

A fűszerek három (3) listán oszlanak meg, amelyek újraszervezhetők Sets segítségével. A Sets olyan listák, amelyek nem tartalmaznak ismétlődő elemeket, továbbá különböző elrendezésekben rendezhetők és összehasonlíthatók más Sets-tel, hogy megtalálják vagy kiemeljék a specifikus elemeket.

A szekrényben három állandó lista található, melyek neve: condiments1, condiments2 és condiments3. Menj a világos X jelzéshez, hogy ellenőrizd a listák tartalmát a speak() függvény segítségével, és gyűjtsd össze mind a három (3) listát a collect() függvénnyel, így: player.speak(condiments1), player.collect(condiments1).

A Sets úgy jön létre, hogy megírod a set() függvényt a lista vagy a listaelemek argumentumaként, majd nevet adsz a Set-nek. Hozz létre három (3) Sets-et set1, set2 és set3 néven, és rendeld hozzájuk a megfelelő számozású lista állandókat, például: set1 = set(condiments1).

Miután összegyűjtötted őket, menj a sötét X jelzéshez a zöld szőnyeg fölött, fordulj az asztal felé, és szűrd a listákat Sets segítségével. Használd a speak() függvényt az imént létrehozott három Sets valamelyikével, például: player.speak(set1).

Ezután menj a sötét X jelzéshez a kék szőnyeg fölött, és egyesítsd az elemeket azzal, hogy ellenőrzöd, mely fűszerek találhatóak meg mindhárom (3) listán. Ezt a intersection() metódus segítségével teheted meg, amely lehetővé teszi a Sets összehasonlítását és azt, hogy megtaláld azokat az elemeket, amelyek minden listában jelen vannak. Nevezd el az eredményül kapott Set-et duplicates-nak, és egyesítsd így: duplicates = set1.intersection(set2,set3), majd használd a speak() függvényt az eredmény ellenőrzéséhez.

Menj a vörös szőnyeghez a sötét X jelzéssel, és egyesítsd mindhárom Sets-et egyetlen Set-be, ezt a union() metódus használatával teheted meg. Ez ugyanúgy működik, mint az intersection() metódus, de ehelyett az összes elemet az összes három (3) Sets-ből egyetlen Set-be helyezi, ismétlődések nélkül. Nevezd el az eredményül kapott Set-et all_items-nak, és egyesítsd így: all_items = set1.union(set2,set3), majd használd a speak() függvényt az eredmény ellenőrzéséhez.

Miután mindent egyesítettél, menj az arany X jelzéshez, fordulj a polcok felé, és használd a place() függvényt, hogy az összes fűszert az üres polcra helyezd, ezzel befejezve a szintet, így: player.place(all_items).

Kódkönyv