370 likes | 537 Views
ΠΕΡΙΓΡΑΦΗ ΓΛΩΣΣΑΣ PYTHON. ΚΑΡΑΒΑΣΙΛΗΣ ΒΑΣΙΛΕΙΟΣ Α.Μ. 764 ΚΟΝΤΟΔΗΜΟΣ ΔΗΜΗΤΡΗΣ Α.Μ. 918. ΠΛΕΟΝΕΚΤΗΜΑΤΑ. ΑΠΛΗ ΕΥΚΟΛΗ ΣΤΗ ΜΑΘΗΣΗ OPEN SOURCE ΥΨΗΛΟΥ ΕΠΙΠΕΔΟΥ( SCRIPT ) ΑΝΕΞΑΡΤΗΤΗ ΛΕΙΤΟΥΡΓΙΚΟΥ ΣΥΣΤΗΜΑΤΟΣ ΔΙΕΡΜΗΝΕΥΟΜΕΝΗ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΗΣ. ΒΑΣΙΚΟΙ ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ.
E N D
ΠΕΡΙΓΡΑΦΗ ΓΛΩΣΣΑΣ PYTHON ΚΑΡΑΒΑΣΙΛΗΣ ΒΑΣΙΛΕΙΟΣ Α.Μ. 764 ΚΟΝΤΟΔΗΜΟΣ ΔΗΜΗΤΡΗΣ Α.Μ. 918
ΠΛΕΟΝΕΚΤΗΜΑΤΑ • ΑΠΛΗ • ΕΥΚΟΛΗ ΣΤΗ ΜΑΘΗΣΗ • OPEN SOURCE • ΥΨΗΛΟΥ ΕΠΙΠΕΔΟΥ(SCRIPT) • ΑΝΕΞΑΡΤΗΤΗ ΛΕΙΤΟΥΡΓΙΚΟΥ ΣΥΣΤΗΜΑΤΟΣ • ΔΙΕΡΜΗΝΕΥΟΜΕΝΗ • ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΗΣ Περιγραφή γλώσσας Python - 2007
ΒΑΣΙΚΟΙ ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ • ΕΜΜΕΣΗ ΔΗΛΩΣΗ ΜΕΤΑΒΛΗΤΩΝ • ΜΕΤΑΒΛΗΤΕΣ • ΑΡΙΘΜΗΤΙΚΕΣ (ΑΚΕΡΑΙΟΙ, ΠΡΑΓΜΑΤΙΚΟΙ, ΜΙΓΑΔΙΚΟΙ) • ΑΛΦΑΡΙΘΜΗΤΙΚΕΣ (‘…’, ”…”, ‘’’…’’’, “””…”””) • ΛΟΓΙΚΕΣ (True, False) Περιγραφή γλώσσας Python - 2007
ΒΑΣΙΚΟΙ ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ • ΤΑ ΟΝΟΜΑΤΑ ΤΩΝ ΜΕΤΑΒΛΗΤΩΝ ΠΕΡΙΕΧΟΥΝ • ΤΑ ΓΡΑΜΜΑΤΑ ΤΟΥ ΑΓΓΛΙΚΟΥ ΑΛΦΑΒΗΤΟΥ ( ΠΕΖΑ - ΚΕΦΑΛΑΙΑ ) • ΤΟ ΧΑΡΑΚΤΗΡΑ “ _ “ • ΤΑ ΨΗΦΙΑ 0,1,2,3,4,5,6,7,8,9 • ΤΟ ΟΝΟΜΑ ΠΡΕΠΕΙ ΝΑ ΑΡΧΙΖΕΙ ΜΕ ΓΡΑΜΜΑ Η΄ “ _ “ Περιγραφή γλώσσας Python - 2007
ΠΡΑΞΕΙΣ ΜΕ ΜΕΤΑΒΛΗΤΕΣ • ΑΡΙΘΜΗΤΙΚΕΣ +, -, *, /, **, //, %, <<, >> &, |, ^, ~ <, >, ==,<=, >=, != • ΑΛΦΑΡΙΘΜΗΤΙΚΕΣ + <, >, ==,<=, >=, != • ΛΟΓΙΚΕΣ not, and, or Περιγραφή γλώσσας Python - 2007
ΜΟΡΦΗ ΠΡΟΓΡΑΜΜΑΤΟΣ • ΕΝΤΟΛΕΣ • ΑΝ ΒΡΙΣΚΟΝΤΑΙ ΣΤΗΝ ΙΔΙΑ ΓΡΑΜΜΗ ΔΙΑΧΩΡΙΖΟΝΤΑΙ ΜΕ “ ;”. • ΑΝ ΒΡΙΣΚΟΝΤΑΙ ΣΕ ΔΙΑΦΟΡΕΤΙΚΗ ΓΡΑΜΜΗ ΤΟ “ ;” ΜΠΟΡΕΙ ΝΑ ΠΑΡΑΛΕΙΦΘΕΙ. Περιγραφή γλώσσας Python - 2007
ΜΟΡΦΗ ΠΡΟΓΡΑΜΜΑΤΟΣ • ΟΙ ΛΕΥΚΟΙ ΧΑΡΑΚΤΗΡΕΣ ( ΚΕΝΑ ΚΑΙ ΤΑΒ ) ΣΤΗΝ ΑΡΧΗ ΤΩΝ ΓΡΑΜΜΩΝ ΟΜΑΔΟΠΟΙΟΥΝ ΤΙΣ ΕΝΤΟΛΕΣ ΣΕ ΟΜΑΔΕΣ ΕΝΤΟΛΩΝ ( ΜΠΛΟΚ ). • ΤΟ ΣΥΜΒΟΛΟ # ΧΡΗΣΙΜΟΠΟΙΕΙΤΑΙ ΓΙΑ ΤΗΝ ΕΙΣΑΓΩΓΗ ΣΧΟΛΙΩΝ. Περιγραφή γλώσσας Python - 2007
ΕΝΤΟΛΕΣ • = • ΑΝΑΘΕΣΗ ΤΙΜΗΣ • Print • ΕΜΦΑΝΙΖΕΙ ΣΤΗΝ ΟΘΟΝΗ • Input • ΔΙΑΒΑΖΕΙ ΑΠΌ ΤΟ ΠΛΗΚΡΟΛΟΓΙΟ Περιγραφή γλώσσας Python - 2007
ΕΝΤΟΛΕΣ • if συνθήκη : Μπλοκ εντολών elif συνθήκη : Μπλοκ εντολών else : Μπλοκ εντολών Περιγραφή γλώσσας Python - 2007
ΕΝΤΟΛΕΣ • while συνθήκη : Μπλοκ εντολών else : Μπλοκ εντολών Περιγραφή γλώσσας Python - 2007
ΕΝΤΟΛΕΣ • for μεταβλητή in λίστα_τιμών : Μπλοκ εντολών else : Μπλοκ εντολών Περιγραφή γλώσσας Python - 2007
ΕΝΤΟΛΕΣ • break • ΧΡΗΣΙΜΟΠΟΙΕΙΤΑΙ ΓΙΑ ΝΑ ΒΓΟΥΜΕ ΑΠΌ ΒΡΟΧΟΥΣ for και while. • continue • ΧΡΗΣΙΜΟΠΟΙΕΙΤΑΙ ΓΙΑ ΝΑ ΠΑΜΕ ΣΤΗΝ ΕΠΟΜΕΝΗ ΕΠΑΝΑΛΗΨΗ for Η while. Περιγραφή γλώσσας Python - 2007
ΣΥΝΑΡΤΗΣΕΙΣ • def όνομα_συνάρτησης ( παράμετροι ): Μπλοκ εντολών • ΟΙ ΠΑΡΑΜΕΤΡΟΙ ΜΠΟΡΟΥΝ ΚΑΙ ΝΑ ΜΗΝ ΥΠΑΡΧΟΥΝ • ΑΝ ΤΟ Μπλοκ εντολών ΔΕΝ ΥΠΑΡΧΕΙ ΠΡΕΠΕΙ ΝΑ ΒΑΛΟΥΜΕ ΤΗΝ ΛΕΞΗ pass • ΥΠΟΣΤΗΡΙΖΕΤΑΙ ΥΠΕΡΦΟΡΤΩΣΗ ΣΥΝΑΡΤΗΣΕΩΝ • ΥΠΟΣΤΗΡΙΖΕΤΑΙ ΑΡΧΙΚΟΠΟΙΗΣΗ ΠΑΡΑΜΕΤΡΩΝ Περιγραφή γλώσσας Python - 2007
ΣΥΝΑΡΤΗΣΕΙΣ • ΓΙΑ ΝΑ ΕΠΙΣΤΡΕΨΟΥΜΕ ΜΙΑ ΤΙΜΗ ΑΠΟ ΣΥΝΑΡΤΗΣΗ ΧΡΗΣΙΜΟΠΟΙΟΥΜΕ ΤΗΝ ΕΝΤΟΛΗ return. • ΕΜΦΑΝΙΣΗ ΠΛΗΡΟΦΟΡΙΩΝ ΤΗΣ ΣΥΝΑΡΤΗΣΗΣ ΓΙΝΕΤΑΙ ΜΕ ΤΟ DocString ΤΟ ΟΠΟΙΟ ΚΑΘΟΡΙΖΕΙ Ο ΔΗΜΙΟΥΡΓΟΣ ΤΗΣ ΣΥΝΑΡΤΗΣΗΣ (__doc__) Περιγραφή γλώσσας Python - 2007
ΑΡΧΕΙΑ • ΓΙΑ ΝΑ ΧΡΗΣΙΜΟΠΟΙΗΣΟΥΜΕ ΜΙΑ ΣΥΝΑΡΤΗΣΗ ‘Η ΜΕΤΑΒΛΗΤΗ ΠΟΥ ΕΙΝΑΙ ΣΕ ΔΙΑΦΟΡΕΤΙΚΟ ΑΡΧΕΙΟ • ΚΑΝΟΥΜΕ import ΤΟ ΣΥΓΚΕΚΡΙΜΕΝΟ ΑΡΧΕΙΟ • ΤΗΝ ΚΑΛΟΥΜΕ ΜΕ ΤΟ ΟΝΟΜΑ_ΑΡΧΕΙΟΥ.ΟΝΟΜΑ_ΣΥΝΑΡΤΗΣΗΣ • ΤΟ ΣΥΓΚΕΚΡΙΜΕΝΟ ΑΡΧΕΙΟ ΟΝΟΜΑΖΕΤΑΙ module Περιγραφή γλώσσας Python - 2007
ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ • ΛΙΣΤΕΣ • ΟΝΟΜΑ_ΛΙΣΤΑΣ = [ ΣΤΟΙΧΕΙΟ_ΛΙΣΤΑΣ1, ΣΤΟΙΧΕΙΟ_ΛΙΣΤΑΣ2, … ΣΤΟΙΧΕΙΟ_ΛΙΣΤΑΣΝ, ] • ΓΙΑ ΝΑ ΑΝΑΦΕΡΘΟΥΜΕ ΣΤΟ i-ΟΣΤΟ ΣΤΟΙΧΕΙΟ ΤΗΣ ΛΙΣΤΑΣ : • ΟΝΟΜΑ_ΛΙΣΤΑΣ[ i ] Περιγραφή γλώσσας Python - 2007
ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ • ΛΕΞΙΚΑ • ΟΝΟΜΑ_ΛΕΞΙΚΟΥ = { ΚΛΕΙΔΙ1 : ΤΙΜΗ1, ΚΛΕΙΔΙ2 : ΤΙΜΗ2,… ΚΛΕΙΔΙΝ : ΤΙΜΗΝ , } • ΣΥΣΧΕΤΙΖΕΙ ΜΙΑ ΤΙΜΗ ΜΕ ΕΝΑ ΚΛΕΙΔΙ • ΓΙΑ ΝΑ ΠΑΡΟΥΜΕ ΤΗΝ ΤΙΜΗ ΤΟΥ i-ΟΣΤΟΥ ΚΛΕΙΔΙΟΥ ΔΙΝΟΥΜΕ • ΟΝΟΜΑ_ΛΕΞΙΚΟΥ[ΚΛΕΙΔΙi ] Περιγραφή γλώσσας Python - 2007
ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ • ΠΛΕΙΑΔΕΣ • ΟΝΟΜΑ_ΠΛΕΙΑΔΑΣ = ( ΣΤΟΙΧΕΙΟ_ΠΛΕΙΑΔΑΣ1, ΣΤΟΙΧΕΙΟ_ΠΛΕΙΑΔΑΣ2, … ΣΤΟΙΧΕΙΟ_ΠΛΕΙΑΔΑΣΝ ,) • ΧΡΗΣΗΜΟΠΟΙΕΙΤΑΙ ΓΙΑ ΟΜΑΔΟΠΟΙΗΣΗ ΔΕΔΟΜΕΝΩΝ • ΓΙΑ ΝΑ ΑΝΑΦΕΡΘΟΥΜΕ ΣΤΟ i-ΟΣΤΟ ΣΤΟΙΧΕΙΟ ΤΗΣΠΛΕΙΑΔΑΣ : • ΟΝΟΜΑ_ΠΛΕΙΑΔΑΣ[ i ] Περιγραφή γλώσσας Python - 2007
ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ • ΜΠΟΡΟΥΜΕ ΝΑ ΠΑΡΟΥΜΕ ΕΝΑ ΜΕΡΟΣ ΤΗΣ ΛΙΣΤΑΣ, ΤΟΥ ΛΕΞΙΚΟΥ Η ΤΗΣ ΠΛΕΙΑΔΑΣ. • ΤΑ ΣΤΟΙΧΕΙΑ ΤΩΝ ΛΙΣΤΩΝ ΚΑΙ ΤΩΝ ΛΕΞΙΚΩΝ ΜΠΟΡΟΥΝ ΝΑ ΑΛΛΑΞΟΥΝ, ΑΛΛΑ ΤΑ ΣΤΟΙΧΕΙΑ ΤΩΝ ΠΛΕΙΑΔΩΝ ΟΧΙ. • ΜΠΟΡΟΥΜΕ ΝΑ ΑΝΑΘΕΣΟΥΜΕ ΜΙΑ ΛΙΣΤΑ ΣΕ ΜΙΑ ΠΛΕΙΑΔΑ ΚΑΙ ΤΟ ΑΝΤΙΘΕΤΟ. • ΤΑ ΣΤΟΙΧΕΙΑ ΤΩΝ ΛΙΣΤΩΝ, ΤΩΝ ΛΕΞΙΚΩΝ ΚΑΙ ΤΩΝ ΠΛΕΙΑΔΩΝ ΔΕΝ ΕΙΝΑΙ ΑΠΑΡΑΙΤΗΤΟ ΝΑ ΕΙΝΑΙ ΙΔΙΟΥ ΤΥΠΟΥ. Περιγραφή γλώσσας Python - 2007
ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΕΙΑ • ΤΑ ΠΑΝΤΑ (ΜΕΤΑΒΛΗΤΕΣ, ΣΥΝΑΡΤΗΣΕΙΣ, ΣΤΙΓΜΙΟΤΥΠΑ ΚΛΑΣΕΩΝ) ΕΙΝΑΙ ΑΝΤΙΚΕΙΜΕΝΑ. • ΤΑ ΑΝΤΙΚΕΙΜΕΝΑ ΠΕΡΙΕΧΟΥΝ ΙΔΙΟΤΗΤΕΣ ΚΑΙ ΛΕΙΤΟΥΡΓΙΕΣ. Περιγραφή γλώσσας Python - 2007
ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΕΙΑ • ΔΗΜΙΟΥΡΓΙΑ ΚΛΑΣΗΣ • class ΟΝΟΜΑ_ΚΛΑΣΗΣ : ΜΕΤΑΒΛΗΤΕΣ (ΙΔΙΟΤΗΤΕΣ) ΣΥΝΑΡΤΗΣΕΙΣ (ΛΕΙΤΟΥΡΓΙΕΣ) Περιγραφή γλώσσας Python - 2007
ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΕΙΑ • ΚΛΗΡΟΝΟΜΙΚΟΤΗΤΑ • class ΟΝΟΜΑ_ΕΞΕΙΔΙΚΕΥΣΗΣ (ΟΝΟΜΑ_ΠΑΤΡΙΚΗΣ_ΚΛΑΣΗΣ ) ΜΕΤΑΒΛΗΤΕΣ (ΙΔΙΟΤΗΤΕΣ) ΣΥΝΑΡΤΗΣΕΙΣ (ΛΕΙΤΟΥΡΓΙΕΣ) Περιγραφή γλώσσας Python - 2007
ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΕΙΑ • ΜΕΣΑ ΣΤΗΝ ΚΛΑΣΗ • ΟΙ ΜΕΤΑΒΛΗΤΕΣ ΔΗΛΩΝΟΝΤΑΙ ΚΑΝΟΝΙΚΑ (ΜΟΝΟ ΜΕ ΤΟ ΟΝΟΜΑ ) ΚΑΙ ΜΠΟΡΟΥΝ ΝΑ ΑΡΧΙΚΟΠΟΙΗΘΟΥΝ. • ΟΙ ΣΥΝΑΡΤΗΣΕΙΣ ΩΣ ΠΡΩΤΟ ΟΡΙΣΜΑ ΕΧΟΥΝ ΜΙΑ ΜΕΤΑΒΛΗΤΗ ΠΟΥ ΑΝΑΦΕΡΕΤΑΙ ΣΤΟ ΑΝΤΙΚΕΙΜΕΝΟ ΠΑΝΩ ΣΤΟ ΟΠΟΙΟ ΚΑΛΟΥΝΤΑΙ. • ΟΛΕΣ ΟΙ ΜΕΤΑΒΛΗΤΕΣ ΚΑΙ ΣΥΝΑΡΤΙΣΕΙΣ ΕIΝΑΙ PUBLIC, ΕΚΤΟΣ ΚΑΙ ΑΝ ΑΡΧΙΖΟΥΝ ΜΕ ‘__’ OΠOTE EINAI PRIVATE. Περιγραφή γλώσσας Python - 2007
ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΕΙΑ • CONSTRUCTOR • def __init__ ( self, παράμετροι ) • DESTRUCTOR • def __del__ ( self ) Περιγραφή γλώσσας Python - 2007
ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΕΙΑ • ΔΗΛΩΣΗ ΑΝΤΙΚΕΙΜΕΝΩΝ • ΟΝΟΜΑ_ΑΝΤΙΚΕΙΜΕΝΟΥ = ΟΝΟΜΑ_ΚΛΑΣΗΣ ( ΟΡΙΣΜΑΤΑ_INIT ) • ΧΡΗΣΗ ΑΝΤΙΚΕΙΜΕΝΩΝ • ΟΝΟΜΑ_ΑΝΤΙΚΕΙΜΕΝΟΥ. ΟΝΟΜΑ_ΜΕΤΑΒΛΗΤΗΣ • ΟΝΟΜΑ_ΑΝΤΙΚΕΙΜΕΝΟΥ. ΟΝΟΜΑ_ΣΥΝΑΡΤΗΣΗΣ ( ΠΑΡΑΜΕΤΡΟΙ_ΣΥΝΑΡΤΗΣΗΣ ) Περιγραφή γλώσσας Python - 2007
ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΕΙΑ • #!/usr/bin/python # Filename: class_init.py class Person: myname=None def __init__(self, name): self.myname = name def sayHi(self): if (self.myname!=None) : print 'Hello, my name is', self.myname else : print “No name” • p = Person('Swaroop') p.sayHi() Περιγραφή γλώσσας Python - 2007
ΥΠΕΡΦΟΡΤΟΣΗ ΤΕΛΕΣΤΩΝ • ΟΛΟΙ ΟΙ ΒΑΣΙΚΟΙ ΤΕΛΕΣΤΕΣ (+,-,…) ΜΠΟΡΟΥΝ ΝΑ ΥΠΕΡΦΟΡΤΟΘΟΥΝ ΚΑΙ ΕΤΣΙ ΝΑ ΔΕΧΟΝΤΑΙ ΩΣ ΤΕΛΟΥΜΕΝΑ ΤΟΥΣ ΑΝΤΙΚΕΙΜΕΝΑ ΚΛΑΣΕΩΝ ΠΟΥ ΕΧΕΙ ΟΡΙΣΕΙ Ο ΧΡΗΣΤΗΣ. • ΓΙΑ ΥΠΕΡΦΟΡΤΟΣΗ ΤΟΥ + ΠΡEΠΕΙ Η ΚΛΑΣΗ ΝΑ ΠΕΡIEΧΕΙ ΤΗ ΣΥΝAΡΤΗΣΗ __add__ Περιγραφή γλώσσας Python - 2007
ΕΞΑΙΡΕΣΕΙΣ • OΤΑΝ ΜΙΑ ΣΥΝΑΡΤΗΣΗ ΑΠΟΤΥΧΕΙ ΕΠΙΣΤΡΕΦΕΙ ΜΙΑ ΕΞΑΙΡΕΣΗ . Περιγραφή γλώσσας Python - 2007
ΕΞΑΙΡΕΣΕΙΣ • try: Μπλοκ εντολών • except ΕΞΑΙΡΕΣΗ1: Μπλοκ εντολών • except ΕΞΑΙΡΕΣΗ2: Μπλοκ εντολών • finally: Μπλοκ εντολών Περιγραφή γλώσσας Python - 2007
ΧΕΙΡΙΣΜΟΣ ΑΡΧΕΙΩΝ • ΟΝΟΜΑ_ΜΕΤΑΒΛΗΤΗΣ = file( ΟΝΟΜΑ_ΑΡΧΕΙΟΥ, ‘wr…’) • ΟΝΟΜΑ_ΜΕΤΑΒΛΗΤΗΣ.read() • ΟΝΟΜΑ_ΜΕΤΑΒΛΗΤΗΣ.readline() • ΟΝΟΜΑ_ΜΕΤΑΒΛΗΤΗΣ. write( ΑΛΦΑΡΙΘΜΗΤΙΚΟ) • ΟΝΟΜΑ_ΜΕΤΑΒΛΗΤΗΣ.close() Περιγραφή γλώσσας Python - 2007
ΔΙΕΡΓΑΣΙΕΣ • ΟΝΟΜΑ_ΜΕΤΑΒΛΗΤΗΣ= os.popen(ΕΝΤΟΛΗ_ΜΕ_ΟΡΙΣΜΑΤΑ) • ΟΝΟΜΑ_ΜΕΤΑΒΛΗΤΗΣ.read() • ΟΝΟΜΑ_ΜΕΤΑΒΛΗΤΗΣ.close() Περιγραφή γλώσσας Python - 2007
ΠΑΚΕΤΑ ΓΡΑΦΙΚΩΝ • Tkinter • wxPython • PyQt • PyGTK Περιγραφή γλώσσας Python - 2007
IDE • BoaConstructor (wxPython) • Eric (PyQt) • Glade (PyGtk) • BlackAdder (PyQt) • Komodo (TkInter) • PythonWorks (TkInter) Περιγραφή γλώσσας Python - 2007
ΕΡΩΤΗΣΕΙΣ Περιγραφή γλώσσας Python - 2007