Κεφάλαιο 1 Εισαγωγή στην Python

Σχετικά έγγραφα
Γλώσσα προγραμματισμού python

ΚΕΦΑΛΑΙΟ 1. Εισαγωγή στην Python. 1.1 Εισαγωγή

ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ. Εισαγωγή στη Python

ΠΛΗΡΟΦΟΡΙΚΗ Ι ΕΡΓΑΣΤΗΡΙΟ 1. Θέμα εργαστηρίου: Εισαγωγή στην Python και στο IDLE

ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ Python. 1η Ομάδα Ασκήσεων

Εισαγωγή στον Προγραμματισμό Python Μάθημα 1: Μεταβλητές, τελεστές, είσοδος/έξοδος προγράμματος, συνθήκη ελέγχου if Νοέμβριος 2014 Χ. Αλεξανδράκη, Γ.

Θέματα Προγραμματισμού Η/Υ

Χρονικές σειρές 1 ο μάθημα: Εισαγωγή στη MATLAB

Προγραμματισμός I (Θ)

Εισαγωγή στην Python. Διάλεξη 0

Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Εργαστήριο 1 Εισαγωγή στη C. Σοφία Μπαλτζή s.mpaltzi@di.uoa.gr

Σημειώσεις του εργαστηριακού μαθήματος Πληροφορική ΙΙ. Εισαγωγή στην γλώσσα προγραμματισμού

Εισαγωγή στο περιβάλλον Code::Blocks

Εισαγωγή στην Αριθμητική Ανάλυση

ΠΛΗΡΟΦΟΡΙΚΗ ΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ

ΚΕΦΑΛΑΙΟ 2. Τιμές, τύποι, μεταβλητές, λέξεις-κλειδιά, εντολές. 2.1 Εισαγωγή

ΠΛΗΡΟΦΟΡΙΚΗ Ι Εργαστήριο 1 MATLAB ΠΛΗΡΟΦΟΡΙΚΗ Ι ΕΡΓΑΣΤΗΡΙΟ 1. Θέμα εργαστηρίου: Εισαγωγή στο MATLAB και στο Octave

ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C

Δημιουργία μιας εφαρμογής Java με το NetBeans

Η γλώσσα προγραμματισμού C

2.1. Εντολές Σχόλια Τύποι Δεδομένων

Αντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Εργαστήριο #2 ο : Ανατομία προγραμμάτων εφαρμογών, η

Αντικειμενοστραφής Προγραμματισμός I(5 ο εξ) Εργαστήριο #2 ο : Ανατομία προγραμμάτων εφαρμογών, η

Εισαγωγή στη γλώσσα προγραμματισμού C++14

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ. Δρ. Π. Νικολαΐδου

FORTRAN και Αντικειμενοστραφής Προγραμματισμός

Πανεπιστήμιο Δυτικής Μακεδονίας. Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών. Ηλεκτρονική Υγεία. Εργαστήριο 4 ο : MATLAB

1. Εισαγωγή στο Sage.

Γραφικά υπολογιστών Εργαστήριο 1 Εισαγωγή στην Python

Τι χρειάζεται ένας φοιτητής για τη σωστή παρακολούθηση και συμμετοχή στο μαθημα;

Προγραμματισμός Υπολογιστών & Εφαρμογές Python. Κ.Π. Γιαλούρης

Αντικειμενοστρεφής Προγραμματισμός

Προγραμματισμός και Χρήση Ηλεκτρονικών Υπολογιστών - Βασικά Εργαλεία Λογισμικού

Εφαρμογές Η/Υ στη Χρηματοοικονομική. Εργαστήριο ΙI. Διδάσκων Καθηγητής: Αχιλλέας Ζαπράνης. Επιμέλεια Σημειώσεων: Ευστράτιος Λιβάνης

Εισαγωγή στην Γλώσσα Προγραμματισμού Python. 12/10/16 1

ΚΕΦΑΛΑΙΟ 8 Η ΓΛΩΣΣΑ PASCAL

1. Βασικά στοιχεία της γλώσσας προγραμματισμού Python

Εισαγωγή στον προγραμματισμό με την Python

Τμήμα Πληροφορικής & Επικοινωνιών Δρ. Θεόδωρος Γ. Λάντζος

ΚΕΦΑΛΑΙΟ 6. Περιβάλλοντα Ανάπτυξης Εφαρμογών. ΚΕΦΑΛΑΙΟ 6 Περιβάλλοντα Ανάπτυξης Εφαρμογών. Α Γενικού Λυκείου

Εισαγωγή στην Επιστήμη Υπολογιστών. Εισαγωγή στην Python

Ανάπτυξη εφαρμογής Input-Output

ΓΛΩΣΣΙΚΗ ΤΕΧΝΟΛΟΓΙΑ. Python & NLTK: Εισαγωγή

ΑΣΚΗΣΗ 1: TO ΠΕΡΙΒΑΛΛΟΝ ΕΡΓΑΣΙΑΣ DEV-C++

Εισαγωγή στον Προγραμματισμό

<<ΔΗΜΗΤΡΗΣ ΜΑΝΩΛΗΣ ΦΥΣΙΚΟΣ ΜCs>> 1

Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client

ΚΕΦΑΛΑΙΟ 3. Εκφράσεις, τελεστές, σχόλια. 3.1 Εισαγωγή

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Εισαγωγή στην FORTRAN. Δρ. Ιωάννης Λυχναρόπουλος

Εισαγωγή στον Προγ/μό Υπολογιστών

1 ο ΕΡΓΑΣΤΗΡΙΟ ΣΗΜΑΤΑ & ΣΥΣΤΗΜΑΤΑ

Εισαγωγή στη Fortran. Μάθημα 1 ο. Ελευθερία Λιούκα

Διαδικασιακός Προγραμματισμός

Αντικειμενοστρεφής Προγραμματισμός

Εγκατάσταση και δοκιμή προγραμμάτων για προγραμματισμό στη C

Εισαγωγή στον Προγραμματισμό Μάθημα 4: Αλγόριθμοι και Γλώσσες Προγραμματισμού Δεκέμβριος 2015 Χ. Αλεξανδράκη

ΚΕΦΑΛΑΙΟ 2 ΜΕΤΑΒΛΗΤΈΣ & ΑΡΙΘΜΟΊ

Τεχνικές σχεδίασης προγραμμάτων, Προγραμματιστικά Περιβάλλοντα

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 25/10/07

2 ΟΥ και 7 ΟΥ ΚΕΦΑΛΑΙΟΥ

ΑΣΚΗΣΗ 2: ΔΟΜΗ ΠΡΟΓΡΑΜΜΑΤΟΣ C, ΧΕΙΡΙΣΜΟΣ ΜΕΤΑΒΛΗΤΩΝ ΚΑΙ ΣΥΝΑΡΤΗΣΕΙΣ ΕΙΣΟΔΟΥ ΚΑΙ ΕΞΟΔΟΥ

Εισαγωγή στη γλώσσα προγραμματισμού C++

Βασικά στοιχεία γλώσσας προγραμματισμού. Σπάχος Κυριάκος Καθηγητής Πληροφορικής ΠΕ19

ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C

Λειτουργικά. Συστήματα Ι. Φ ρ ο ν τ ι σ τ ή ρ ι ο. Αριστείδης Ηλίας. Εργαστήριο Ηλεκτρονικών Υπολογιστών

1 η Εργαστηριακή Άσκηση MATLAB Εισαγωγή

Πληροφορική ΙΙ Θεματική Ενότητα 3

ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C

Πρώτη επαφή με το μαθηματικό πακέτο Mathematica

Αλγόριθμος. Αλγόριθμο ονομάζουμε τη σαφή και ακριβή περιγραφή μιας σειράς ξεχωριστών οδηγιών βημάτων με σκοπό την επίλυση ενός προβλήματος.

Σχολικό Βιβλίο - Κεφάλαιο 7 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕ PASCAL ΠΑΡΟΥΣΙΑΣΗ 13

PERL. Δήμος Παύλου Δημήτρης Κουζαπάς

Εισαγωγή στην γλώσσα προγραμματισμού C

Σημειώσεις του εργαστηριακού μαθήματος Πληροφορική ΙΙ. Εισαγωγή στην γλώσσα προγραμματισμού

Διάλεξη 2. Μεταβλητές - Δομές Δεδομένων - Eίσοδος δεδομένων - Έξοδος: Μορφοποίηση - Συναρτήσεις. Διοργάνωση : ΚΕΛ ΣΑΤΜ

Πληροφορική ΙΙ Θεματική Ενότητα 2

Βασικές Αρχές Προγραμματισμού

ΕΙΔΗ,ΤΕΧΝΙΚΕΣ ΚΑΙ ΠΕΡΙΒΑΛΛΟΝΤΑ ΠΡΟΓΡΑΜΜΑΤΙ- ΣΜΟΥ

To περιβάλλον Ανάπτυξης εφαρμογών της Visual Basic 2008 Express Edition

Εισαγωγή στο MATLAB. Κολοβού Αθανασία, ΕΔΙΠ,

MATLAB Desktop (Επιφάνεια Εργασίας MATLAB) [1.]

Συμβολική γλώσσα Εκπαιδευτικού Υπολογιστή - Λογισμικό Υπολογιστών

Εισαγωγή στον Προγραµµατισµό. Διάλεξη 2 η : Βασικές Έννοιες της γλώσσας προγραµµατισµού C Χειµερινό Εξάµηνο 2011

Υλοποίηση ενός προγραμματιστικού κελύφους εργασίας

Εισαγωγή στην επιστήμη των υπολογιστών

Ανάπτυξη και Σχεδίαση Λογισμικού

Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον

Σύντομες εισαγωγικές σημειώσεις για την. Matlab

Εργαστήριο Μαθηματικής Ανάλυσης Ι. Εισαγωγή στη Matlab Βασικές Συναρτήσεις-Γραφικές παραστάσεις. Πανεπιστήμιο Θεσσαλίας. Σχολή Θετικών Επιστημών

Συνοπτικό εγχειρίδιο χρήσης του Microsoft Visual Studio 2010

Διάλεξη 2η: Αλγόριθμοι και Προγράμματα

Εισαγωγή στην Επιστήμη Υπολογιστών. Εισαγωγή στην Python

ΘΕΜΑΤΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Η/Υ

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών

Βασίλειος Κοντογιάννης ΠΕ19

Τύποι δεδομένων, τελεστές, μεταβλητές

ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Κεφάλαιο 8 : H γλώσσα προγραµµατισµού Pascal 1 ο Μέρος σηµειώσεων (Ενότητες 8.1 & 8.2 σχολικού βιβλίου)

ΟΔΗΓΙΕΣ ΕΓΚΑΤΑΣΤΑΣΗΣ & ΧΡΗΣΗΣ ΟΛΟΚΛΗΡΩΜΕΝΟΥ ΠΕΡΙΒΑΛΛΟΝΤΟΣ ΑΝΑΠΤΥΞΗΣ BloodShed Dev-C++

Εισαγωγή στη γλώσσα προγραμματισμού JAVA. Δομές Δεδομένων Διδάσκων: Π.Α. Μήτκας Τομέας Ηλεκτρονικής και Υπολογιστών

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών

Transcript:

Κεφάλαιο 1 Εισαγωγή στην Python 1.1 Ιστορία της Python H Python αποτελεί μια εύκολη στην εκμάθηση γενικού σκοπού γλώσσα προγραμματισμού. Η απλή της σύνταξη την κάνει ιδανική για όποιον θέλει να κάνει τα πρώτα του βήματα στον προγραμματισμό. Η Python αποτελεί μια γλώσσα προγραμματισμού υψηλού επιπέδου (high-level). Οι γλώσσες προγραμματισμού διακρίνονται σε υψηλού και χαμηλού επιπέδου, ανάλογα με το πόσο πολύ μοιάζουν στην ανθρώπινη γλώσσα. Όσο πιο χαμηλό είναι το επίπεδο μιας γλώσσας προγραμματισμού, τόσο πιο κοντά είναι στη γλώσσα μηχανής και τόσο πιο πολύπλοκος είναι ο προγραμματισμός μ αυτή. Η μετατροπή ενός προγράμματος γλώσσας υψηλού επιπέδου σε γλώσσα μηχανής, την οποία καταλαβαίνει και μπορεί να εκτελέσει ένας συγκεκριμένος υπολογιστής, μπορεί να γίνει με δύο διαφορετικούς τρόπους. Είτε με τη διαδικασία της μεταγλώττισης (compiling) είτε με τη διαδικασία της διερμήνευσης (interpreting). Κατά τη μεταγλώττιση, ο compiler αναλαμβάνει τον πηγαίο κώδικα (source code) και παράγει το εκτελέσιμο πρόγραμμα (executable), το οποίο στη συνέχεια μπορούμε να εκτελέσουμε. Στη δεύτερη περίπτωση, o interpreter δέχεται ως είσοδο διαδοχικά κάθε εντολή του πηγαίου κώδικα, τη μεταφράζει και την εκτελεί αμέσως. Η γλώσσα προγραμματισμού Python δημιουργήθηκε από τον Guido van Rossum στο Κέντρο Μαθηματικών και Πληροφορικής (Centrum Wiskunde & Informatica) της Ολλανδίας στις αρχές της δεκαετίας του 90. O Guido είχε συμμετάσχει στην ομάδα δημιουργίας της γλώσσας ABC (All Basic Code) και στη συνέχεια εργάστηκε στην ομάδα εξέλιξης του κατανεμημένου λειτουργικού συστήματος Amoeba. Ο αρχικός σχεδιασμός για την Python ήταν να αποτελέσει τη γλώσσα δημιουργίας σεναρίων εντολών (script) διαχείρισης του Amoeba. Στην υλοποίησή της έγιναν προσπάθειες να διορθωθούν τα μειονεκτήματα της ABC και να προστεθούν νέα χαρακτηριστικά που ήταν απαραίτητα για τον σκοπό της. Βασικός στόχος ήταν πάντα η δημιουργία μιας γλώσσας προγραμματισμού, η οποία θα είχε πολλές δυνατότητες αλλά ταυτόχρονα θα ήταν εύκολη στην εκμάθηση και στη χρήση της. Ο Guido van Rossum εργάστηκε το διάστημα 2005-2012 στην Google, όπου συνέχισε να συμμετέχει στην εξέλιξη της γλώσσας (η Python αποτελεί την «επίσημη»

14 Μαθαίνετε εύκολα Python scripting γλώσσα της εταιρείας) και από το 2013 εργάζεται πλέον για την Dropbox (μια υπηρεσία που επίσης χρησιμοποιεί ως κύρια γλώσσα την Python). Κατέχει τον τίτλο του Benevolent Dictator For Life (BDFL) της Python και το 2001 του απονεμήθηκε το βραβείο Advancement of Free Software από το ίδρυμα Free Software Foundation για την προσφορά του στην προαγωγή του ελεύθερου λογισμικού. Το όνομα Python που της έδωσε δεν προέρχεται από το ερπετό πύθωνα αλλά το εμπνεύσθηκε από τους Βρετανούς κωμικούς Mothy Python. Παρ όλα αυτά, το επίσημο λογότυπο της Python αποτελείται από δύο πύθωνες. 1.2 Βασικά Χαρακτηριστικά της Python Η Python είναι μια διερμηνευόμενη (interpreted), αλληλεπιδραστική (interactive) και αντικειμενοστραφής (object-oriented) γλώσσα προγραμματισμού γενικής χρήσεως. Μπορεί να χρησιμοποιηθεί σε ένα ευρύ φάσμα εφαρμογών, από τη δημιουργία απλών script διαχείρισης εργασιών λειτουργικού συστήματος μέχρι εφαρμογές διαδικτύου ή σύνθετων επιστημονικών υπολογισμών. Είναι ανεξάρτητη λειτουργικού συστήματος, δηλαδή ένα πρόγραμμα γραμμένο για Windows μπορεί να εκτελεστεί αυτούσιο σε περιβάλλον Linux ή Mac OS X και το αντίστροφο. Ο διερμηνευτής και οι βιβλιοθήκες της γλώσσας είναι διαθέσιμοι από τον επίσημο ιστότοπο www.python.org του μη κερδοσκοπικού οργανισμού Python Software Foundation, ο οποίος έχει και την ευθύνη συντήρησης και εξέλιξης της γλώσσας. Το πρωτότυπο της γλώσσας αποτελεί η υλοποίηση CPython, αλλά υπάρχουν εναλλακτικές υλοποιήσεις για Java (Jython) και.net (IronPython). Υπάρχουν δύο τρόποι για να εκτελέσουμε ένα πρόγραμμα της Python. Μπορούμε να χρησιμοποιήσουμε τη διαδραστική λειτουργία του διερμηνευτή (interactive interpreter mode) ή να χρησιμοποιήσουμε ένα αρχείο πηγαίου κώδικα (source code file). Στην πρώτη περίπτωση (interactive mode) πληκτρολογούμε κάθε φορά μία εντολή της Python και ο διερμηνευτής τις εκτελεί, ενώ στη δεύτερη περίπτωση γράφουμε εντολές τις Python σε ένα αρχείο, το οποίο δίνουμε ως είσοδο στον διερμηνευτή να το εκτελέσει. Εξ ορισμού τα αρχεία κώδικα της Python έχουν επέκταση.py. Κυκλοφορούν ταυτόχρονα δύο εκδόσεις της γλώσσας, η έκδοση 3.x και η έκδοση 2.x, οι οποίες δυστυχώς δεν είναι απόλυτα συμβατές μεταξύ τους. Στην έκδοση 3 προστέθηκαν νέα χαρακτηριστικά και έχει γίνει σημαντική προσπάθεια να απαλειφθούν όλα τα μικροπροβλήματα της προηγούμενης έκδοσης.

Εισαγωγή στη Python 15 Η Python είναι προϊόν ελεύθερου και ανοιχτού λογισμικού και ο κώδικάς της είναι διαθέσιμος για ελεύθερη χρήση και τροποποίηση. Στον επίσημο ιστότοπο θα βρούμε τον πηγαίο κώδικα (source) της γλώσσας τον οποίο θα χρειαστούμε για να εγκαταστήσουμε μια νεότερη έκδοση σε συστήματα Linux. Συνοψίζοντας τα βασικά χαρακτηριστικά της γλώσσας είναι τα εξής: Η Python είναι απλή. Έχει απλή σύνταξη και ο κώδικας ενός προγράμματος είναι άμεσα κατανοητός. Αυτός είναι και ο λόγος για τον οποίο μαθαίνεται γρήγορα και εύκολα. Δεν είναι τυχαίο το γεγονός ότι σε πολλά τμήματα Πληροφορικής των πιο γνωστών Πανεπιστημίων των ΗΠΑ (όπως MIT, Carnegie Mellon, Berkeley, Washington) αποτελεί την «εισαγωγική» γλώσσα εκμάθησης προγραμματισμού. Η Python είναι ισχυρή και επεκτάσιμη. Οι δυνατότητες της γλώσσας δεν υπολείπονται των υπόλοιπων σύγχρονων γλωσσών προγραμματισμού και σε πολλά σημεία (π.χ. στις δυναμικές δομές) υπερέχει κιόλας. Η πρότυπη βιβλιοθήκη της είναι πολύ πλούσια. Μπορούμε να επεκτείνουμε τις δυνατότητες της γλώσσας με νέες μονάδες (modules) γραμμένες και σε διαφορετικές γλώσσες προγραμματισμού, όπως είναι οι C/C++. Η Python είναι αντικειμενοστραφής γλώσσα. Αν και διαθέτει όλα τα χαρακτηριστικά μιας αντικειμενοστραφούς γλώσσας, δεν είναι απαραίτητο να χρησιμοποιήσουμε τις δυνατότητες αυτές. Δεν πρέπει, όμως να ξεχνάμε ότι τα πάντα στην Python είναι αντικείμενα: μεταβλητές, λίστες, συναρτήσεις, μονάδες, τα πάντα (everything is an object). Η Python είναι δωρεάν. Όπως ήδη αναφέραμε είναι λογισμικό ανοιχτού και δωρεάν κώδικα (open source). Η Python είναι ανεξάρτητη πλατφόρμας. Τα προγράμματα της Python είναι φορητά, μπορούν δηλαδή να εκτελεσθούν αυτούσια σε μια μεγάλη ποικιλία συστημάτων, από PlayStation μέχρι υπερυπολογιστές Cray. Η Python είναι ιδανική για ταχεία ανάπτυξη εφαρμογών. Η Python είναι μια γλώσσα με δυναμικούς τύπους (dynamic type system), δηλαδή οι βασικοί έλεγχοι γίνονται κατά τον χρόνο εκτέλεσης του προγράμματος. Η ύπαρξη λειτουργιών υψηλότερου επιπέδου σε σχέση με τις παραδοσιακές γλώσσες μας επιτρέπει με λίγες γραμμές κώδικα να δημιουργήσουμε προγράμματα για τα οποία θα χρειαζόμασταν να ξοδέψουμε πολύ περισσότερο χρόνο. Ως διερμηνευόμενη γλώσσα είναι προφανές ότι κάποια προγράμματα της Python θα είναι πιο αργά απ ό,τι ένα αντίστοιχο μεταγλωττισμένο π.χ. σε C. Η ταχύτητα, όμως, ανάπτυξης εφαρμογών σε συνδυασμό με τους σύγχρονους υπολογιστές αποτελεί σημαντικότερο παράγοντα χρήσης της.

16 Μαθαίνετε εύκολα Python 1.3 Το Περιβάλλον IDLE Για τη συγγραφή προγραμμάτων είναι απαραίτητος ένας κειμενογράφος ή ακόμα καλύτερα ένα ολοκληρωμένο περιβάλλον ανάπτυξης (Integrated Development Environment - IDE), το οποίο είναι ένα ειδικό λογισμικό για την ανάπτυξη εφαρμογών. Στο διαδίκτυο θα βρούμε πολλά αξιόλογα προγράμματα τα οποία είναι δωρεάν ή έχουν μικρό κόστος και είναι εξειδικευμένα για προγραμματισμό με Python (Wing IDE, PyCharm, PyDev, Spyder, Eric, IEP κ.ά.). Η Python έρχεται μαζί με ένα εύχρηστο περιβάλλον ανάπτυξης με την ονομασία ΙDLE. Τα αρχικά του έρχονται από τις λέξεις Interactive DeveLopment Environment και είναι γραμμένο σε Python από τον Guido van Rossum. Χρησιμοποιεί τη βιβλιοθήκη γραφικών Tkinter, το προκαθορισμένο πακέτο για τη γραφική διασύνδεση χρήστη της Python, οπότε μπορεί να εκτελεσθεί σε περιβάλλον Linux, Windows και Mac OS X. Το IDLE μας δίνει τη δυνατότητα να χρησιμοποιήσουμε διαδραστικά τον διερμηνευτή της γλώσσας, να γράψουμε και να επεξεργαστούμε προγράμματα, να τα αποθηκεύσουμε σε αρχεία, να τα εκτελέσουμε, να κάνουμε αποσφαλμάτωση κ.ά. Αν και υπάρχουν περιβάλλοντα ανάπτυξης με περισσότερες δυνατότητες, το IDLE θεωρείται ιδανικό για την εκμάθηση της γλώσσας. Για να εκτελέσουμε το πρόγραμμα IDLE κάνουμε κλικ στο αντίστοιχο εικονίδιο: Εμφανίζεται ο φλοιός της Python (Python Shell), που σε διανομή Ubuntu έχει την παρακάτω μορφή: Εμφανίζονται κάποιες πληροφορίες, όπως είναι η έκδοση της Python και το σύστημα που χρησιμοποιούμε και ακολουθούν τα σύμβολα >>> που αποτελούν το

Εισαγωγή στη Python 17 σημείο προτροπής εντολών (prompt) της Python. Στο σημείο αυτό πληκτρολογούμε μια εντολή και πατάμε το πλήκτρο [Enter]. Ο διερμηνευτής της Python θα την εκτελέσει άμεσα και θα εμφανίσει τα τυχόν αποτελέσματα στην οθόνη. Αν για παράδειγμα θέλουμε να υπολογίσουμε το άθροισμα δύο αριθμών, πληκτρολογούμε στο σημείο προτροπής τους δύο αριθμούς και ενδιάμεσά τους τον τελεστή + για την πρόσθεση και πατάμε το πλήκτρο [Enter]. Η έξοδος της εντολής θα είναι το αποτέλεσμα της πρόσθεσης με την παρακάτω μορφή: Παρατηρούμε ότι το IDLE χρησιμοποιεί διαφορετικά χρώματα για την επισήμανση του συντακτικού του κώδικα. Έτσι π.χ. τo προκαθορισμένο χρώμα για τα αλφαριθμητικά είναι το πράσινο και για τα σχόλια το κόκκινο. Τα χρώματα επισήμανσης (του φλοιού αλλά και της python) καθώς και οι υπόλοιπες ρυθμίσεις μπορούν να τροποποιηθούν από το παράθυρο διαλόγου Settings, που εμφανίζεται αν επιλέξουμε το μενού Options και στη συνέχεια την επιλογή Configure IDLE. Το μενού Help μας παρέχει βοήθεια για το IDLE και για την Python. Αν επιλέξουμε Python Docs από το μενού Help ή πατήσουμε το πλήκτρο [F1], εμφανίζεται η αρχική σελίδα της τεκμηρίωσης της Python.

18 Μαθαίνετε εύκολα Python Εναλλακτικά, μπορούμε να πληκτρολογήσουμε την εντολή help() στον φλοιό της Python και να ζητήσουμε βοήθεια διαδραστικά: Η έξοδος από τη διαδραστική βοήθεια γίνεται με την εντολή quit. Η πληκτρολόγηση εντολών στο σήμα προτροπής χρησιμεύει για να δοκιμάσουμε στα γρήγορα μια εντολή. Ο κώδικας των προγραμμάτων έστω και λίγων γραμμών πρέπει να αποθηκευτεί σε ένα αρχείο για να είναι πάντα διαθέσιμος. Για να δημιουργήσουμε ένα νέο πρόγραμμα κάνουμε κλικ στην επιλογή New File του μενού File. Εμφανίζεται το παράθυρο επεξεργασίας κώδικα, όπου πληκτρολογούμε τον κώδικα που επιθυμούμε.

Εισαγωγή στη Python 19 Πριν εκτελέσουμε το πρόγραμμα πρέπει πρώτα να αποθηκεύσουμε τον κώδικα σ ένα αρχείο με επέκταση.py. Στο παράθυρο επεξεργασίας κώδικα επιλέγουμε από το μενού File την επιλογή Save As και από το ομώνυμο παράθυρο διαλόγου που εμφανίζεται, επιλέγουμε τον κατάλογο αποθήκευσης και το όνομα του αρχείου. Για να εκτελέσουμε το πρόγραμμα επιλέγουμε Run Module από το μενού Run ή πατάμε το πλήκτρο [F5]. Όπως φαίνεται και από την προηγούμενη εικόνα, ο διερμηνευτής της Python εκτελεί με τη σειρά τις δύο εντολές του προγράμματος και εμφανίζει στη συνέχεια το γνωστό σήμα προτροπής περιμένοντας νέες εντολές. 1.4 Εκτέλεση Προγραμμάτων στη Γραμμή Εντολών Αν δε θέλουμε να χρησιμοποιήσουμε το IDLE, μπορούμε να γράψουμε τον κώδικα του προγράμματος σε μια εφαρμογή επεξεργασίας κειμένου, όπως είναι για παράδειγμα το Nodepad++ στα Windows ή το gedit σε διανομές Linux. Η εκτέλεση του προγράμματος γίνεται καλώντας τον διερμηνευτή της Python με όρισμα το αρχείο με τον κώδικα. Για παράδειγμα, αν θέλουμε να εκτελέσουμε στα Windows το πρόγραμμα hello.py που είναι αποθηκευμένο στον φάκελο work, θα πληκτρολογήσουμε στη γραμμή εντολών την εντολή: C:\work>python hello.py και θα πατήσουμε το πλήκτρο [Enter]. Αντίστοιχα σε Linux, αφού κάνουμε τρέχοντα τον κατάλογο στον οποίο αποθηκεύσαμε το αρχείο με τον πηγαίο κώδικα, θα πληκτρολογήσουμε μια παρόμοια εντολή ώστε να εκτελεστεί από την έκδοση 3 του διερμηνευτή: $ python3 hello.py Σε συστήματα Linux έχουμε τη δυνατότητα να κάνουμε το πηγαίο αρχείο εκτελέσιμο με την εντολή chmod μεταβάλλοντας τα δικαιώματα χρήσης ως εξής:

20 Μαθαίνετε εύκολα Python $ chmod u+x hello.py Η προηγούμενη εντολή προσθέτει στον ιδιοκτήτη (u) του αρχείου το δικαίωμα εκτέλεσης (x). Για να εμφανίσουμε τα δικαιώματα ενός αρχείου χρησιμοποιούμε την εντολή ls με την επιλογή -l: $ ls -l hello.py -rwxrw-r-- 1 nemo staff 46 Μάρ 13 15:50 hello.py Ως πρώτη γραμμή του αρχείου προσθέτουμε μία από τις παρακάτω εντολές: #!/usr/bin/env python3 #!/usr/bin/python3 Οι δύο πρώτοι χαρακτήρες #! ονομάζονται shebang και υποδεικνύουν στον φλοιό ότι πρόκειται περί εκτελέσιμου αρχείου. Τους χαρακτήρες shebang ακολουθεί το μονοπάτι προς τον διερμηνευτή που θα χρησιμοποιηθεί για την εκτέλεση του script. Η πρώτη εντολή είναι πιο ευέλικτη καθώς δε χρησιμοποιεί την απόλυτη διαδρομή προς τον διερμηνευτή, αλλά παίρνει τη συγκεκριμένη πληροφορία από το περιβάλλον του φλοιού. Τώρα, μπορούμε να εκτελέσουμε το πρόγραμμα καλώντας το με το όνομά του, εφόσον βρίσκεται στον τρέχοντα κατάλογο: $./hello.py ή ακόμα πιο σύντομα ως $ hello.py εφόσον έχουμε ρυθμίσει κατάλληλα τη μεταβλητή περιβάλλοντος PATH με μια εντολή σαν την επόμενη: $ export PATH=$PATH:/home/nemo/work Η ενημέρωση της μεταβλητής PATH με το μονοπάτι προς τα εκτελέσιμα αρχεία χάνεται κάθε φορά που κλείνουμε το παράθυρο του τερματικού. Η ρύθμιση αυτή μπορεί να γίνει μόνιμη, αν την προσθέσουμε σ ένα αρχείο εκκίνησης του φλοιού, όπως είναι το.bashrc. 1.5 Το Λεξιλόγιο της Python Το λεξιλόγιο της Python αποτελείται από λέξεις-κλειδιά (keywords), από τα αναγνωριστικά (identifiers), τους τελεστές (operators) και τα κυριολεκτικά (literals): Λέξεις-κλειδιά Ο επόμενος πίνακας παρουσιάζει τις λέξεις-κλειδιά της Python. Οι λέξεις αυτές αποτελούν τη βάση της γλώσσας και δεν επιτρέπεται να τις χρησιμοποιήσουμε ως

Εισαγωγή στη Python 21 αναγνωριστικά. Δεν μπορούμε δηλαδή να ονοματίσουμε μ αυτές ένα δικό μας αντικείμενο. Λέξεις κλειδιά της Python 3.5 False None True and as assert break class continue def del elif else except finally for from global if import in is lambda nonlocal not or pass raise return try while with yield Μπορούμε οποιαδήποτε στιγμή να εμφανίσουμε τον προηγούμενο κατάλογο πληκτρολογώντας στον φλοιό της Python τις επόμενες εντολές: >>> import keyword >>> keyword.kwlist Αναγνωριστικά Στην κατηγορία αυτή ανήκουν τα ονόματα που αποδίδει ο προγραμματιστής σε μεταβλητές, συναρτήσεις, κλάσεις και γενικότερα σε όλα τα αντικείμενα που ορίζει ο χρήστης. Τα ονόματα μπορεί να αποτελούνται από γράμματα, ψηφία και τον χαρακτήρα υπογράμμισης. Η γλώσσα είναι case sensitive αυτό σημαίνει ότι γίνεται διάκριση μεταξύ πεζών και κεφαλαίων γραμμάτων. Η σύνταξη των αναγνωριστικών βασίζεται στο πρότυπο Unicode (Python Enhancement Proposals 3131), οπότε στην έκδοση 3 της Python μπορούμε να χρησιμοποιήσουμε και ελληνικά γράμματα στα ονόματα των αντικειμένων. Τελεστές Οι τελεστές είναι σύμβολα ή λέξεις που αναπαριστούν συγκεκριμένες διεργασίες, οι οποίες εκτελούνται σε δεδομένα και χρησιμοποιούνται στοn σχηματισμό παραστάσεων. Τα δεδομένα πάνω στα οποία επιδρούν ονομάζονται τελεστέοι. Οι τελεστές χωρίζονται σε κατηγορίες σύμφωνα με την εργασία που εκτελούν (αριθμητικοί, σχεσιακοί, λογικοί κ.τ.λ.). Για παράδειγμα, στην Python ο τελεστής + ανάλογα με τους τελεστέους προσθέτει δύο αριθμούς ή ενώνει δύο αλφαριθμητικά. Κυριολεκτικά Ως κυριολεκτικό αναφερόμαστε στην αναπαράσταση μιας τιμής κάποιου από τους βασικούς τύπους της γλώσσας. Για κάθε τύπο δεδομένων ορίζονται διαφορετικές μορφές προσδιορισμού κυριολεκτικών. Έτσι για παράδειγμα το 7, το 0o177 και το 0xa11 αποτελούν ακέραια κυριολεκτικά, το 3.14 και το 5e-10 αποτελούν κυριολεκτικά αριθμού κινητής υποδιαστολής.

22 Μαθαίνετε εύκολα Python 1.6 Ευανάγνωστος Κώδικας και Σχόλια Ένας βασικός κανόνας για τη συγγραφή ευανάγνωστου κώδικα για όλες τις γλώσσες προγραμματισμού είναι μία γραμμή - μία εντολή. Παρ ό,τι έχουμε τη δυνατότητα να χρησιμοποιήσουμε περισσότερες εντολές στην ίδια γραμμή, αυτό γενικά πρέπει να αποφεύγεται για χάρη της σαφήνειας του κώδικα. Αν παραθέσουμε δύο ή περισσότερες εντολές στην ίδια γραμμή, πρέπει να χρησιμοποιήσουμε ως διαχωριστικό το ελληνικό ερωτηματικό (semicolon) ; που σηματοδοτεί το τέλος μιας εντολής. Για παράδειγμα, η επόμενη γραμμή κώδικα (physical line of code) περιέχει 3 εντολές (logical lines of code): x = 13; print(y); i += 1 Η συνάρτηση print() τυπώνει το όρισμά της στην οθόνη. Το όρισμα μπορεί να είναι μια κυριολεκτική τιμή ή μια μεταβλητή και εφόσον τα ορίσματα είναι περισσότερα από ένα χωρίζονται με κόμμα. Αν κάποια εντολή έχει μεγάλο μήκος, πάλι για χάρη της σαφήνειας μπορούμε να την επεκτείνουμε σε δύο ή περισσότερες φυσικές γραμμές χρησιμοποιώντας στο τέλος κάθε γραμμής τον χαρακτήρα \ (αριστερή πλάγια - backslash) ως εξής: if x > 0 and \ y <= 1: print('done!') Εκτός από τον ρητό τρόπο (explict) επέκτασης μιας λογικής γραμμής με τη χρήση της αριστερής πλάγιας, η Python χρησιμοποιεί σιωπηρά (implicit) τις παρενθέσεις, τις τετράγωνες αγκύλες και τα άγκιστρα, όπως δείχνει και το επόμενο παράδειγμα: print('this is a very very very very very very' 'very very very very very very very very very very' 'very very very very very very very long line') Τα σχόλια είναι ενσωματωμένες σημειώσεις στον πηγαίο κώδικα και χρησιμεύουν για να συνοψίζουν τη λειτουργία του ή να εξηγούν τις προθέσεις του προγραμματιστή. Στη γλώσσα προγραμματισμού Python οτιδήποτε έπεται του συμβόλου # αγνοείται από τον διερμηνευτή. # This is a single line comment print('comments are useful.') # I am a comment too Εκτός από τα σχόλια μιας γραμμής, η Python παρέχει τη δυνατότητα δημιουργίας σχολίων που εκτείνονται σε περισσότερες γραμμές. Τα σχόλια πολλαπλών γραμμών περικλείονται σε τριπλά εισαγωγικά, όπως φαίνεται στο επόμενο παράδειγμα:

Εισαγωγή στη Python 23 """ """ this is a multiline comment Αντί για τρία διπλά εισαγωγικά μπορούμε να χρησιμοποιήσουμε τρία μονά: ''' ''' I am a multiline comment too Όπως θα δούμε αργότερα, τα σχόλια πολλών γραμμών χρησιμεύουν και στην τεκμηρίωση συναρτήσεων (docstrings). Αν και υπάρχουν διάφορες απόψεις για το είδος και το πλήθος των σχολίων που πρέπει να περιέχει ένα πρόγραμμα, δεν έβλαψαν ποτέ κανέναν τα επιπλέον σχόλια.