ΠΛΗΡΟΦΟΡΙΚΗ ΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ ΠΑΝΕΠΙΣΤΗΜΙΟ αΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ ΠΛΗΡΟΦΟΡΙΚΗ ΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ 4η Διάλεξη (α) Κ.ΑΛΑΦΟΔΗΜΟΣ καθηγητής Δ.Παπαχρήστος μέλος ΕΔΙΠ ΑΕΙ ΠΕΙΡΑΙΑ ΤΤ
Επανάληψη της γλώσσας προγραμματισμού PYTHON & του Ανοικτού Λογισμικού Σκοπός Διάλεξης Επανάληψη της γλώσσας προγραμματισμού PYTHON & του Ανοικτού Λογισμικού
Ανοικτό Λογισμικό Είναι λογισμικό που μπορεί να χρησιμοποιηθεί, αντιγραφεί, μελετηθεί, τροποποιηθεί και αναδιανεμηθεί χωρίς περιορισμό (GPL) Σκεφτείτε το Ελεύθερο λογισμικό ως αντίστοιχο της ελευθερίας του λόγου και όχι της “δωρεάν μπύρας” (free as in free speech, not free beer)
PYTHON Γλώσσα προγραμματισμού : Υψηλού επιπέδου Μεταφράσιμη και όχι μεταγλωτίσιμη (interpreted και όχι compiled) Ενσωματώνει έτοιμες, υψηλού επιπέδου δομές δεδομένων
PYTHON Βασικά χαρακτηριστικά : Δεν απαιτείται compile Δυνατά εργαλεία εξσφαλμάτωσης ( debuging ) Απλή σύνταξη με ιδιαίτερα εύληπτη μορφή . Ενσωματώνει έτοιμες, υψηλού επιπέδου δομές δεδομένων Μεταφέρσιμη γλώσσα Ευρεία διασυνδεσιμότητα πχ με βιβλιοθήκες άλλων γλωσσών C,C++
PYTHON ΓΙΑΤΙ;;; Γλώσσα υψηλού επιπέδου εγγύτερα στην ανθρώπινη σκέψη Συνεπώς ευκολότερη εκμάθηση Συνεχώς νέοι χρήστες στρέφονται σε αυτή
PYTHON Μερικοι χρήστες : Google (παράδειγμα το Google App Engine) NASA Yahoo! MIT RedHat και σχεδόν όλες οι διανομές linux
PYTHON Μερικές εφαρμογές : Γρήγορη προτυποποίηση (prototyping) Προγραμματισμός στον Παγκόσμιο Ιστό Scripting Εκπαίδευση Επιστήμη Εφαρμογές με γραφική διεπαφή
PYTHON
ΜΕΤΑΒΛΗΤΕΣ ΚΑΙ ΒΑΣΙΚΟΙ ΤΕΛΕΣΤΕΣ PYTHON ΜΕΤΑΒΛΗΤΕΣ ΚΑΙ ΒΑΣΙΚΟΙ ΤΕΛΕΣΤΕΣ a=‘qwerty’ a=2 Ο διερμηνέας της PYTHON μπορεί να υποδείξει το τύπο δεδομένων Σημασιολογικό (λογικό) λάθος Οι χαρακτήρες διαστήματος έχουν αξία στην PYTHON
PYTHON ΜΕΤΑΒΛΗΤΕΣ ΚΑΙ ΒΑΣΙΚΟΙ ΤΕΛΕΣΤΕΣ Μεταβλητές είναι ένας τρόπος αποθήκευσης δεδομένων Τα δεδομένα τους (τιμή μεταβλητής) μπορεί να αλλάζει κατά την εκτέλεση του λογισμικού 5 5 Μεταβλητή Α (variable A) Μεταβλητή Α (variable A) ΠΡΙΝ ΜΕΤΑ
ΜΕΤΑΒΛΗΤΕΣ ΚΑΙ ΒΑΣΙΚΟΙ ΤΕΛΕΣΤΕΣ PYTHON ΜΕΤΑΒΛΗΤΕΣ ΚΑΙ ΒΑΣΙΚΟΙ ΤΕΛΕΣΤΕΣ Boolean εκφράσεις 4 == 4 (true) 3 == 8 (false) NOT AND OR
ΜΕΤΑΒΛΗΤΕΣ ΚΑΙ ΒΑΣΙΚΟΙ ΤΕΛΕΣΤΕΣ PYTHON ΜΕΤΑΒΛΗΤΕΣ ΚΑΙ ΒΑΣΙΚΟΙ ΤΕΛΕΣΤΕΣ a = 3 b = 1 a > b True c = 11 a > b and a > c False
ΜΕΤΑΒΛΗΤΕΣ ΚΑΙ ΒΑΣΙΚΟΙ ΤΕΛΕΣΤΕΣ PYTHON ΜΕΤΑΒΛΗΤΕΣ ΚΑΙ ΒΑΣΙΚΟΙ ΤΕΛΕΣΤΕΣ Τελεστές (operators) Πράξεις + - * / ** % Σύγκρισης == != > < >= <=
PYTHON ΑΡΙΘΜΗΤΙΚΗ Η PYTHON μπορεί να χρησιμοποιηθεί ως αρθμομηχανή (χρήση βασικών πράξεων)
PYTHON ΒΑΣΙΚΕΣ ΕΝΤΟΛΕΣ Εξαγωγή δεδομένων print (εκτύπωση) pi=3.142
PYTHON ΒΑΣΙΚΕΣ ΕΝΤΟΛΕΣ Πράξεις (αριθμητικές)
PYTHON ΒΑΣΙΚΕΣ ΕΝΤΟΛΕΣ Πράξεις -> μαθηματικές συναρτήσεις Για εισαγωγή όλων των συναρτήσεων μιας βιβλιοθήκης
PYTHON ΒΑΣΙΚΕΣ ΕΝΤΟΛΕΣ Εισαγωγή δεδομένων Input (PYTHON 3.x) Input raw (PYTHON 2.x) Αλλαγή γραμμής (newline)
PYTHON ΒΑΣΙΚΕΣ ΕΝΤΟΛΕΣ Σχόλια # ………………
ΕΛΕΓΧΟΣ ΡΟΗΣ ΛΟΓΙΣΜΙΚΟΥ PYTHON ΕΛΕΓΧΟΣ ΡΟΗΣ ΛΟΓΙΣΜΙΚΟΥ Δομή ελέγχου if condition: … [else : …] a = int(input( ‘factor a: ‘)) b=float(input(‘factor b :’)) If a == 0: print (“The a = 0”) else: print (“The a <> 0”) If b == 0 Z = a+b Εσωτερικές εντολές
ΕΛΕΓΧΟΣ ΡΟΗΣ ΛΟΓΙΣΜΙΚΟΥ PYTHON ΕΛΕΓΧΟΣ ΡΟΗΣ ΛΟΓΙΣΜΙΚΟΥ If…elif…else… (αντί switch, αντίστοιχη της else if)
ΕΛΕΓΧΟΣ ΡΟΗΣ ΛΟΓΙΣΜΙΚΟΥ PYTHON ΕΛΕΓΧΟΣ ΡΟΗΣ ΛΟΓΙΣΜΙΚΟΥ break: εντολή εξόδου από κάποιο σώμα (ή βρόχο ) εντολών Χρήση μόνο όπου δεν γίνεται αλλιώς if (a > b*5): print (x) print (y) break else: print z T = 56 + x * y
PYTHON ΣΥΝΑΡΤΗΣΕΙΣ Ορισμός συνάρτησης (def) Όρισμα
PYTHON ΣΥΝΑΡΤΗΣΕΙΣ οι συναρτήσεις μπορούν να αποτελούνται από πολλές γραμμές κώδικα οι συναρτήσεις να καλούν άλλες συναρτήσεις οι συναρτήσεις δεν είναι υποχρεωτικό να επιστρέφουν μια αριθμητική τιμή αλλά οτιδήποτε
PYTHON ΣΥΝΑΡΤΗΣΕΙΣ - Η συνάρτηση remainder υπολογίζει και επιστρέφει το υπόλοιπο της διαίρεσης δυο ακεραίων αριθμών - Στη συνέχεια η check_odd_or_even καλεί την remainder για να διαπιστώσει αν κάποιος ακέραιος είναι περιττός (odd) ή άρτιος (even)
PYTHON ΣΥΝΑΡΤΗΣΕΙΣ - Αυτό το πρόγραμμα περιέχει δύο ορισμούς συνάρτησης: τον print_lyrics και τον repeat_lyrics - Οι ορισμοί των συναρτήσεων εκτελούνται ακριβώς όπως οι άλλες δηλώσεις αλλά το αποτέλεσμα είναι η δημιουργία αντικειμένων συναρτήσεων - Οι δηλώσεις μέσα στη συνάρτηση δεν εκτελούνται μέχρις ότου να καλεστεί η συνάρτηση, και ο ορισμός της συνάρτησης δεν παράγει καμία έξοδο
PYTHON ΒΡΟΧΟΙ ΕΠΑΝΑΛΗΨΗΣ for >>> for x in [0, 1, 2, 3, 4]: print 'Για x=', x, ' f(x)=',f(x) Για x= 0 f(x)= -2.8 Για x= 1 f(x)= -3.9249 Για x= 2 f(x)= -5.0192 Για x= 3 f(x)= -6.0823 Για x= 4 f(x)= -7.1136 Λίστα
PYTHON ΒΡΟΧΟΙ ΕΠΑΝΑΛΗΨΗΣ for (int i= 0; i < 5; i++) (C/C++) for (int i : IntArray) (Java) for i in range (0,5) (Python) O βρόχος for είναι πιο απλός, πιο εκφραστικός και λιγότερο ευπαθής σε σφάλματα στην Python
PYTHON ΒΡΟΧΟΙ ΕΠΑΝΑΛΗΨΗΣ while condition: …………… [True] sum=0 while a<50: sum +=a print (sum)
PYTHON ΠΑΡΑΔΕΙΓΜΑ IDLE περιβάλλον
PYTHON ΠΑΡΑΔΕΙΓΜΑ
PYTHON ΠΑΡΑΔΕΙΓΜΑ
PYTHON ΠΑΡΑΔΕΙΓΜΑ
PYTHON ΠΑΡΑΔΕΙΓΜΑ
PYTHON ΠΑΡΑΔΕΙΓΜΑ
Σας ευχαριστώ για την προσοχή σας…