Προχωρημένο Μάθημα Ανάπτυξης σε Python
Κεφάλαιο
>
Επίπεδο
Προχωρημένες Λίστες
Δημιουργία Συνόλου
Στόχος
Οργανώστε τα καρυκεύματα στο ντουλάπι σε σωστές κατηγορίες και αποθηκεύστε τα στα ράφια χρησιμοποιώντας Sets.
Υπάρχουν αρκετά καρυκεύματα που αποθηκεύονται σε ντουλάπι, είναι όλα έτοιμα για χρήση αλλά είναι ατακτοποιημένα και δύσκολα προσβάσιμα. Πρέπει να διανεμηθούν σωστά στα κενά ράφια δίπλα τους που έχουν ήδη αδειάσει.
Τα καρυκεύματα είναι διασπαρμένα σε τρεις (3) λίστες που μπορούν να αναδιοργανωθούν χρησιμοποιώντας Sets. Τα Sets είναι λίστες που δεν έχουν επαναλαμβανόμενα στοιχεία, μπορούν επίσης να ταξινομηθούν σε διάφορες διατάξεις και να συγκριθούν με άλλα Sets για την εύρεση ή επισήμανση συγκεκριμένων στοιχείων.
Υπάρχουν τρεις σταθερές λίστες αποθηκευμένες στο ντουλάπι, οι οποίες ονομάζονται: condiments1 , condiments2 και condiments3. Πηγαίνετε στο φως του σημείου X για να ελέγξετε το περιεχόμενο των λιστών χρησιμοποιώντας τη συνάρτηση speak() και συλλέξτε όλες τις τρεις (3) λίστες χρησιμοποιώντας τη συνάρτηση collect(), όπως αυτό: player.speak(condiments1),player.collect(condiments1) .
Τα Sets δημιουργούνται γράφοντας set() με τη λίστα ή τα στοιχεία της λίστας ως παράμετρο, στη συνέχεια ανατίθενται ένα όνομα για το Set. Δημιουργήστε τρία (3) Sets με ονόματα: set1 , set2 και set3, και αναθέστε τους στις αντίστοιχες σταθερές αριθμημένες λίστες, για παράδειγμα: set1 = set(condiments1) .
Μόλις συλλεχθούν, πηγαίνετε στο σκοτεινό σημείο X πάνω από το πράσινο χαλί, στραφείτε προς το τραπέζι και φιλτράρετε τις λίστες μέσω των Sets. Χρησιμοποιήστε τη συνάρτηση speak() με όλα τα τρία Sets που μόλις δημιουργήσατε, για παράδειγμα: player.speak(set1) .
Στη συνέχεια, πηγαίνετε στο σκοτεινό σημείο X πάνω από το μπλε χαλί και ενοποιήστε τα στοιχεία ελέγχοντας ποια καρυκεύματα υπάρχουν σε όλες τις τρεις (3) λίστες. Κάντε το αυτό χρησιμοποιώντας τη μέθοδο intersection(), η οποία σας επιτρέπει να συγκρίνετε τα Sets και να βρείτε ποια στοιχεία υπάρχουν και στις τρεις. Ονομάστε το προκύπτον Set duplicates και ενοποιήστε, ως εξής: duplicates = set1.intersection(set2,set3) , χρησιμοποιήστε τη συνάρτηση speak() για να επαληθεύσετε το προκύπτον Set.
Πηγαίνετε στο κόκκινο χαλί με το σκοτεινό σημείο X και ενοποιήστε όλα τα τρία Sets σε ένα ενιαίο Set. Αυτό γίνεται χρησιμοποιώντας τη μέθοδο union(). Χρησιμοποιείται με τον ίδιο τρόπο όπως η μέθοδος intersection(), αλλά αντί αυτού, παίρνει όλα τα στοιχεία από όλα τα τρία (3) Sets και τα τοποθετεί σε ένα ενιαίο Set χωρίς διπλότυπα. Ονομάστε το προκύπτον Set all_items και ενοποιήστε, ως εξής: all_items = set1.union(set2,set3) , χρησιμοποιήστε τη συνάρτηση speak() για να επαληθεύσετε το προκύπτον Set.
Μόλις όλα ενοποιηθούν, πηγαίνετε στο χρυσό σημείο X και στραφείτε προς τα ράφια, χρησιμοποιήστε τη συνάρτηση place() για να τοποθετήσετε όλα τα καρυκεύματα στο κενό ράφι, προκειμένου να ολοκληρώσετε το επίπεδο, ως εξής: player.place(all_items) .