ΠΛΗΡΟΦΟΡΙΚΗ ΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Κ.ΑΛΑΦΟΔΗΜΟΣ καθηγητής Δ.Παπαχρήστος μέλος ΕΔΙΠ ΑΕΙ ΠΕΙΡΑΙΑ ΤΤ ΠΑΝΕΠΙΣΤΗΜΙΟ Α ΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ 4 η Διάλεξη (β)
Σκοπός Διάλεξης Η παρουσίαση της γλώσσας Προγραμματισμού PYTHON (δομημένος προγραμματισμός) και μια εισαγωγή στην UML
PYTHON Βασικές Δομές Δεδομένων Αλφαριθμητικά (strings) Πλειάδες (tuples) Λεξικά (Dictionaries) Σύνολα (Sets)
PYTHON ΑΛΦΑΡΙΘΜΗΤΙΚΑ Αμετάβλητα Είδος ακολουθίας (sequence) Κάθε στοιχείο -> αριθμημένη σειρά Προσπέλαση Προεπιλεγμένη κωδικοποίηση UTF-8
PYTHON ΑΛΦΑΡΙΘΜΗΤΙΚΑ
PYTHON ΑΛΦΑΡΙΘΜΗΤΙΚΑ Προσπέλαση – Προσπέλαση των στοιχείων μετρώντας από το τέλος του αλφαριθμητικού προς την αρχή του με χρήση του συμβόλου – με τη βοήθεα του δείκτη (index)
PYTHON ΑΛΦΑΡΙΘΜΗΤΙΚΑ Αντιστροφή αλφαριθμητικού Αντιστροφή αλφαριθμητικού (από το τέλος ένα – ένα τα γράμματα από τη αντίστροφη σειρά)
PYTHON ΑΛΦΑΡΙΘΜΗΤΙΚΑ Αντιστροφή αλφαριθμητικού Αντιστροφή αλφαριθμητικού (μόνο ένα τμήμα του)
PYTHON ΑΛΦΑΡΙΘΜΗΤΙΚΑ Συναρτήσεις αλφαριθμητικών rjust() rjust(): δεξιά στοίχιση χρησιμοποιώντας τόσους χαρακτήρες όσους αναφέρονται στο όρισμα της
PYTHON ΑΛΦΑΡΙΘΜΗΤΙΚΑ Συναρτήσεις αλφαριθμητικών split() split(): χωρίζε ένα αλφαριθμητικό με βάση το όρισμα που δέχεται κα είναι και αυτό αλφαριθμητικό
PYTHON ΛΙΣΤΑ λίστες Οι λίστες είναι δομές δεδομένων οι οποίες μπορούν να περιέχουν οποιοδήποτε πλήθος στοιχείων Λίστα = Πίνακας Αυτόματη δέσμευση μνήμης
PYTHON ΛΙΣΤΑ Η λίστα μπορεί να περιέχει οτιδήποτε τύπου αντικείμενο
PYTHON ΛΙΣΤΑ Μία λίστα μέσα σε μία άλλη λίστα ονομάζεται εμφωλευμένη λίστα ['spam', 2.0, 5, [10, 20]] Μία λίστα η οποία δεν περιέχει κανένα στοιχείο ονομάζεται κενή λίστα και μπορείτε να δημιουργήται με κενές αγκύλες [] Οι λίστες είναι ευμετάβλητες
PYTHON ΛΙΣΤΑ ΛΙΣΤΑ >>> cheeses = ['Cheddar', 'Edam', 'Gouda'] >>> numbers = [17, 123] >>> empty = [] >>> print cheeses[0] Cheddar >>> numbers = [17, 123] >>> numbers[1] = 5 >>> print numbers [17, 5]
PYTHON ΛΙΣΤΑ Διασχίζοντας μία λίστα για διάβασμα στοιχείων for cheese in cheeses: print cheese Εγγραφή ή διαγραφή στοιχείων λίστας for i in range(len(numbers)): numbers[i] = numbers[i] * 2 Η len επιστρέφει το πλήθος των στοιχείων της λίστας και η range επιστρέφει μία λίστα δεικτών από το 0 έως το n-1, όπου n είναι το μήκος της λίστας Σε κάθε επανάληψη η i παίρνει το δείκτη του επόμενου στοιχείου και χρησιμοποιείται από τη δήλωση εκχώρησης μέσα στο σώμα για να διαβάσει τη παλιά τιμή του στοιχείου και να εκχωρήσει την νέα
PYTHON ΛΙΣΤΑ Λίστες και τεμάχια >>> t = ['a', 'b', 'c', 'd', 'e', 'f'] >>> t[1:3] ['b', 'c'] >>> t[:4] ['a', 'b', 'c', 'd'] >>> t[3:] ['d', 'e', 'f']
PYTHON ΛΙΣΤΑ Μέθοδοι Λιστών Προσθήκη νέου στοιχείου Επεκτείνει μια λίστα με την προσθήκη μιας άλλης λίστας Ταξινόμηση λίστα (αύξουσα σειρά)
PYTHON ΛΙΣΤΑ Διαγραφή στοιχείου λίστας Χρήση λίστας ως στοίβας push (ονομάζεται append στην Python) pop
PYTHON ΠΛΕΙΑΔΑ Είναι ένα στιγμιότυπο της λίστας Δεν αλλάζει μέγεθος ούτε και στοιχεία Με την χρήση της επιστρέφονται πολλές τιμές σε συναρτήσεις Δημιουργία πλειάδας:
PYTHON ΛΕΞΙΚΟ Αντιστοίχηση τιμών με λέξεις κλειδιών Γενίκευση λιστών Δεικτοδότηση αντικείμενο με οποιοδήποτε αντικείμενο φτάνει αυτό να είναι σταθερό και μοναδικό (δηλ. δεν αλλάζει τιμή)
PYTHON ΛΕΞΙΚΟ Δημιουργία λεξικού Προσθήκη τιμής σε άδειο λεξικό
PYTHON ΛΕΞΙΚΟ Δημιουργία λεξικού με τη μέθοδο diet()
PYTHON ΛΕΞΙΚΟ Διαγραφή Διαγραφή: χρήση του del - del d[‘milk’], διαγραφή της αντίστοιχης εγγραφής από το λεξικό Μέγεθος Μέγεθος: Ανάκτηση μεγέθους ενός λεξικού (αριθμός ζευγαρών/ κλειδί/τιμή) με len(d) Κλειδιά Κλειδιά: Εύρεση κλειδιών ενός λεξικού (χρήσιμο σε βρόχους) με d.keys() Τιμές Τιμές: εύρεση τιμών με d.values() Κλειδί/τιμή Κλειδί/τιμή: ανάκτηση όλων των ζευγών κλειδί/τιμή από ένα συγκεκριμένο λεξικό με d.items() που επιστρέφει πλειάδες από δύο στοιχεία (κλειδί, τιμή)
PYTHON ΛΕΞΙΚΟ
PYTHON ΛΕΞΙΚΟ Διάτρεξη τιμών (απλή) Διάτρεξη τιμών (επιστροφή κλεδί/τιμή)
PYTHON ΛΕΞΙΚΟ Ταξινόμηση λεξικού
PYTHON ΣΥΝΟΛΑ Δημιουργία συνόλου Χρήση [ ]
PYTHON ΣΥΝΟΛΑ Πρόσθεση στοιχείου σε ένα σύνολο Αφαίρεση στοιχείου από ένα σύνολο Ένωση συνόλων Τομή συνόλων Διαφορά συνόλων Συμμετρική διαφορά συνόλων
PYTHON ΣΥΝΟΛΑ
PYTHON ΣΥΝΟΛΑ
PYTHON Απλοί τύποι - bool - int - float - string
PYTHON Τοπικές και Καθολικές μεταβλητές Μια τοπική μεταβλητή είναι προσβάσιμη μόνο στο τοπικό εύρος (scope) scope Μια καθολική μεταβλητή είναι προσβάσιμη σε κάθε εύρος (scope)
PYTHON Τοπικές και Καθολικές μεταβλητές
PYTHON
Σας ευχαριστώ για την προσοχή σας…