ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ Python 1η Ομάδα Ασκήσεων Περιεχόμενο εργαστηρίου: - Το περιβάλλον ανάπτυξης προγραμμάτων IDLE - Διαδικασία ανάπτυξης προγραμμάτων Python - Εισαγωγικά προγράμματα / print / μεταβλητές / input Αναλυτικά: Η υλοποίηση των αλγορίθμων του μαθήματος θα γίνεται με τη γλώσσα προγραμματισμού Pyhton. Το περιβάλλον ανάπτυξης προγραμμάτων (IDE) που θα χρησιμοποιηθεί είναι το IDLE, το οποίο είναι ανοιχτού κώδικα, διαθέσιμο δωρεάν στο Internet και εγκαθίσταται μαζί με τον interpreter (διερμηνέα) της Python. http://www.python.org/downloads/ Έναρξη του IDLE και Χρήση τού Κελύφους της Python Το IDLE είναι ένα ολοκληρωμένο περιβάλλον ανάπτυξης Python προγραμμάτων που περιλαμβάνει διάφορα εργαλεία ανάπτυξης, όπως: Ένα κέλυφος (shell) στο οποίο η Python τρέχει σε διαδραστική λειτουργία. Μπορείτε να γράψετε εντολές Python στην προτροπή (>>>) του κελύφους και να τις εκτελέσετε άμεσα μόλις πατήσετε Enter. Μπορείτε επίσης να εκτελέσετε ολόκληρα προγράμματα Python που έχετε αποθηκεύσει σε κάποιο αρχείο. Ένα κειμενογράφο (editor) που χρωματίζει κατάλληλα τις λέξεις-κλειδιά της Python καθώς και άλλα τμήματα των προγραμμάτων, για την σύνταξη αρχείων προγραμμάτων. Ένα εργαλείο ελέγχου module που εντοπίζει συντακτικά σφάλματα σε ένα πρόγραμμα χωρίς να το εκτελέσει. Εργαλεία αναζήτησης που σας επιτρέπουν να βρείτε συγκεκριμένο κείμενο σε ένα ή περισσότερα αρχεία. Εργαλεία μορφοποίησης κειμένου που σας βοηθούν να διατηρείτε σταθερά επίπεδα εσοχών σε ένα πρόγραμμα. Έναν αποσφαλματωτή (debugger) που σας επιτρέπει τη βήμα-προς-βήμα παρακολούθηση των αλλαγών των τιμών μεταβλητών καθώς εκτελείται η κάθε εντολή ενός προγράμματος. Διάφορα άλλα προχωρημένα εργαλεία ανάπτυξης προγραμμάτων. Αφού εγκατασταθεί η Python στο σύστημά σας, εμφανίζεται μία ομάδα προγραμμάτων Python στη λίστα των προγραμμάτων του μενού Έναρξη/Start. Εάν εκκινήσετε το IDLE (Python GUI) θα δείτε το παράθυρο κελύφους της Python που φαίνεται στην Εικόνα 1. Μέσα στο παράθυρο αυτό τρέχει ο διερμηνέας της Python σε διαδραστική λειτουργία. Στο επάνω μέρος του παραθύρου υπάρχει ένα μενού που παρέχει πρόσβαση σε όλα τα εργαλεία του IDLE. ΤΕΙ Ιονίων Νήσων Τμήμα ΔΕ 1
Εικόνα 1. Το παράθυρο κελύφους του IDLE Η προτροπή >>> υποδεικνύει ότι ο διερμηνέας αναμένει την πληκτρολόγηση κάποιας εντολής Python. Όταν πληκτρολογείτε εκεί μία εντολή και πατάτε το πλήκτρο Enter, η εντολή εκτελείται άμεσα. Για παράδειγμα, η Εικόνα 2 δείχνει το παράθυρο κελύφους μετά την είσοδο και εκτέλεση τριών εντολών. Εικόνα 2. Εκτέλεση εντολών από το διερμηνέα της Python Όταν πληκτρολογείτε την αρχή μίας εντολής πολλαπλών γραμμών, όπως είναι η εντολή if ή ένας βρόχος, κάθε επόμενη γραμμή ξεκινάει αυτόματα σε εσοχή. Το πάτημα του πλήκτρου Enter σε κενή γραμμή σηματοδοτεί το τέλος της εντολής πολλαπλών γραμμών και κάνει το διερμηνέα να την εκτελέσει. Η Εικόνα 3 δείχνει το παράθυρο κελύφους μετά την είσοδο και εκτέλεση μιας for εντολής (βρόχος). ΤΕΙ Ιονίων Νήσων Τμήμα ΔΕ 2
Εικόνα 3. Εκτέλεση εντολής πολλαπλών γραμμών από το διερμηνέα της Python Σύνταξη Προγράμματος Python στον Κειμενογράφο του IDLE Για να γράψετε ένα νέο πρόγραμμα Python στο IDLE, πρέπει να ανοίξετε ένα νέο παράθυρο κειμενογράφου (editor). Όπως φαίνεται στην Εικόνα 4, επιλέγετε το Αρχείο/File από το μενού και στη συνέχεια το Νέο Παράθυρο/New Window. (Εναλλακτικά μπορείτε να πατήσετε Ctrl+N). Αυτό ανοίγει ένα παράθυρο κειμενογράφου όπως αυτό που φαίνεται στην Εικόνα 5. Εικόνα 4. Το μενού Αρχείο/File για εκκίνηση του editor ΤΕΙ Ιονίων Νήσων Τμήμα ΔΕ 3
Εικόνα 5. Ένα παράθυρο του κειμενογράφου (editor) Για να ανοίξετε ένα ήδη υπάρχον πρόγραμμα, επιλέγετε το Αρχείο/File από το μενού και μετά το Άνοιγμα/Open. Στη συνέχεια απλά επιλέγετε το αρχείο από την τοποθεσία στην οποία είναι αποθηκευμένο και θα ανοίξει σε ένα παράθυρο κειμενογράφου. Ο κώδικας που εισάγεται στο παράθυρο του κειμενογράφου, καθώς και στο παράθυρο κελύφους της Python, χρωματίζεται ως εξής: Οι λέξεις-κλειδιά της Python εμφανίζονται με πορτοκαλί χρώμα. Τα σχόλια εμφανίζονται με κόκκινο χρώμα. Οι συμβολοσειρές εμφανίζονται με πράσινο χρώμα. Τα ονόματα συναρτήσεων, κλάσεων κτλ, εμφανίζονται με μπλε χρώμα. Οι ενσωματωμένες συναρτήσεις εμφανίζονται με μωβ χρώμα. Η Εικόνα 6 δείχνει ένα παράδειγμα όπου ο κειμενογράφος περιέχει χρωματισμένο κώδικα. Εικόνα 6. Χρωματισμένος κώδικας σε ένα παράθυρο κειμενογράφου ΤΕΙ Ιονίων Νήσων Τμήμα ΔΕ 4
Μπορείτε να αλλάξετε τις ρυθμίσεις χρωμάτων του IDLE επιλέγοντας το Επιλογές/Options από το μενού και στη συνέχεια το Ρυθμίσεις IDLE/Configure IDLE. Επιλέξτε την καρτέλα Υπογράμμιση/Highlighting στο επάνω μέρος του παράθυρου διαλόγου και εκεί μπορείτε να καθορίσετε τα χρώματα του κάθε στοιχείου ενός προγράμματος. Ο κειμενογράφος του IDLE σας βοηθάει να διατηρείτε τα σωστά επίπεδα εσοχής (Indentation) κατά τη συγγραφή προγραμμάτων με τη δημιουργία αυτόματων εσοχών. Όταν πληκτρολογείτε μία γραμμή που τελειώνει με άνω-κάτω τελεία (όπως μία εντολή if, η πρώτη γραμμή ενός βρόχου ή η επικεφαλίδα μίας συνάρτησης) και πατήσετε το πλήκτρο Enter, ο κειμενογράφος βάζει αυτόματα σε εσοχή τις γραμμές που θα πληκτρολογήσετε στη συνέχεια. Για παράδειγμα, στον κώδικα της Εικόνας 6, αφού πατήσετε το πλήκτρο Enter στο τέλος της 2ης γραμμής ο κειμενογράφος θα βάλει αυτόματα σε εσοχή τις γραμμές που θα πληκτρολογήσετε αμέσως μετά. Στη συνέχεια, αφού πατήσετε το Enter στο τέλος της 3ης γραμμής, ο κειμενογράφος μπαίνει σε νέο επίπεδο εσοχής. Το πάτημα του πλήκτρου Backspace στην αρχή κάποιας γραμμής που βρίσκεται σε εσοχή, ακυρώνει ένα επίπεδο εσοχής. Στο παράθυρο του κειμενογράφου μπορείτε να αποθηκεύσετε το τρέχον πρόγραμμά σας με μία από τις ακόλουθες επιλογές από το μενού Αρχείο/File: Αποθήκευση / Save Αποθήκευση Ως / Save As Αποθήκευση Αντιγράφου Ως / Save Copy As Οι επιλογές 'Αποθήκευση' και 'Αποθήκευση Ως' λειτουργούν όπως ακριβώς και σε οποιαδήποτε εφαρμογή Windows. Η επιλογή 'Αποθήκευση Αντιγράφου Ως' λειτουργεί όπως και η 'Αποθήκευση Ως', αλλά κρατάει το πρωτότυπο πρόγραμμα στο παράθυρο του κειμενογράφου χωρίς να το επηρεάζει. Αφού έχετε γράψει ένα πρόγραμμα στον κειμενογράφο, μπορείτε να το εκτελέσετε πατώντας το πλήκτρο F5 ή, επιλέγοντας το Εκτέλεση/Run από το μενού και στη συνέχεια το Εκτέλεση Module/Run Module. Αν το πρόγραμμα δεν έχει αποθηκευτεί μετά την τελευταία τροποποίησή του, θα εμφανιστεί ένα μύνημα προτροπής για αποθήκευση (πατήστε OK για να αποθηκεύσετε το πρόγραμμα στο υπάρχον αρχείο). Όταν το πρόγραμμα εκτελείται η έξοδός του εμφανίζεται στο παράθυρο κελύφους του IDLE. Αν ένα πρόγραμμα περιέχει κάποιο συντακτικό σφάλμα, όταν προσπαθήσετε να το εκτελέσετε θα δείτε το παράθυρο διαλόγου που φαίνεται στην Εικόνα 7. Αφού πατήσετε το κουμπί ΟΚ, ο κειμενογράφος θα υπογραμμίσει το τμήμα του κώδικα που περιέχει το σφάλμα. Αν θέλετε να ελέγξετε το πρόγραμμά σας για συντακτικά σφάλματα χωρίς να προσπαθήσετε να το τρέξετε, μπορείτε να επιλέξετε το μενού Εκτέλεση/Run και στη συνέχεια το Έλεγχος Module/Check Module. Τα σφάλματα που πιθανόν να υπάρχουν, θα αναφερθούν. Εικόνα 7. Παράθυρο διαλόγου που αναφέρει ένα συντακτικό σφάλμα ΤΕΙ Ιονίων Νήσων Τμήμα ΔΕ 5
Ασκήσεις: Άσκηση 1 Γράψτε ένα πρόγραμμα στο κέλυφος του Python (διαδραστική λειτουργία) που να τυπώνει τον Αριθμό Μητρώου σας με χρήση της συνάρτησης print. Πρίν από τον αριθμό (και στην ίδια γραμμή) προσθέστε επεξηγηματικό κείμενο (π.χ. Ο αριθμός μητρώου μου είναι:) Άσκηση 2 Γράψτε το παρακάτω πρόγραμμα στον editor, αποθηκεύστε τον και δοκιμάστε να τον τρέξετε. Τι παρατηρείτε; print("i'm Mike.") print('read "Othello" by tomorrow!') print("""i'm reading "Othello" tonight.""") print("""one Two Three""") Άσκηση 3 Επαναλάβετε το ζητούμενο της Άσκησης 1 με χρήση μεταβλητής η οποία θα αναφέρεται στον Αριθμό Μητρώου σας (εκχώρηση του Αριθμού Μητρώου σας στη μεταβλητή). Άσκηση 4 Επαναλάβετε το ζητούμενο της Άσκησης 3 με λήψη του Αριθμού Μητρώου σας από τον χρήστη μέσω του πληκτρολογίου με χρήση της συνάρτησης input. Άσκηση 5 Γράψτε ένα πρόγραμμα που να ζητάει όνομα, ηλικία και βάρος του χρήστη και στο τέλος να εμφανίζει αυτά τα δεδομένα για επιβεβαίωση, τυπωμένα σε μία γραμμή μαζί με επεξηγηματικό κείμενο (π.χ. Με λένε Κώστα, είμαι 26 ετών και ζυγίζω 78 κιλά). Τί παρατηρείτε για την χρήση κειμένου (αλφαριθμητικού, π.χ. το όνομα) με την χρήση της input; ΤΕΙ Ιονίων Νήσων Τμήμα ΔΕ 6