Code ReUse 1 – Functions

Ωραία βρήκαμε ένα τρόπο λοιπόν να αφαιρούμε ένα στοιχείο που εμφανίζεται σε μία λίστα παραπάνω από μία φορά. Ας σκεφτούμε όμως λίγο πιο γενικά. Υλοποιήσαμε έναν αλγόριθμο που ίσως μας φανεί χρήσιμος και στην επίλυση άλλων προβλημάτων. Υπάρχουν τρόποι  ώστε να τον έχουμε διαθέσιμο στην προγραμματιστική μας φαρέτρα, για την επόμενη φορά ? ή θα πρέπει κάνουμε ένα κόπυ πέϊστ, προσαρμόζοντας τα ονόματα των αντικειμένων.

Μέρος 1ο – Functions

Ας πάρουμε ως παράδειγμα αυτό που αναφέραμε σε προηγούμενο άρθρο δηλαδή: τη διαγραφή ενός στοιχείου που εμφανίζεται σε μία λίστα περισσότερες από μία φορές.

Είχαμε λοιπόν το εξής τμήμα για τη διαγραφή ενός στοιχείου:

Ας το δούμε τώρα σε συνάρτηση:

Related imageΧμμμ ένα θέμα τώρα που προκύπτει είναι ότι η συνάρτηση αυτή δεν έχει return ??? δηλαδή τι ? δεν επιστρέφει τίποτα ? και πως γίνεται !!!

Θα τα εξηγήσουμε σε επόμενο άρθρο προς το παρόν λοιπόν υλοποιήστε εάν σας μπερδεύει τη συνάρτηση όπως φαίνεται πιο κάτω με το γνωστό return στο τέλος της (υπενθυμίζουμε ότι το αντικείμενο λίστας στην python παράγει mutable στιγμιότυπα:

 

Image result for polymorphismΕν τω μεταξύ (ή εντωμεταξύ) μπορείτε να απολαύσετε την ευελιξία της python όπου, η ίδια συνάρτηση μπορεί να δουλέψει και με λίστα ακεραίων και με λίστα αλφαριθμητικών και με λίστα λιστών και γενικά με οποιαδήποτε λίστα αντικειμένων. Χαρακτηριστικό που ονομάζεται:

Πολυμορφισμός

τι πως? δεν καταλάβατε?? ουφ πολλά θέματα προέκυψαν πάμε να λύσουμε ένα και προκύπτουν και άλλα, τι μου θυμίζει αυτό, μα κάτι μου θυμίζει:Image result for λερναια υδρα

 ας το αφήσουμε και αυτό το θέμα λοιπόν (τον πολυμορφισμό) για άλλη φορά !!! Αυτή η παροιμία “μην κάνεις σήμερα αυτό που μπορείς να αφήσεις για αύριο” αποδεικνύεται συχνά πολύ χρήσιμη ή …. ή μήπως τη θυμάμαι λάθος ???

 

 

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.