📚 Περιεχόμενα Κεφαλαίου
12.1 Τι είναι η Python
Η Python είναι μια γλώσσα προγραμματισμού, όπως και η C. Ωστόσο, έχει σχεδιαστεί ώστε να είναι πολύ απλή στην εκμάθηση και να μοιάζει σχεδόν με «κανονικά» αγγλικά.
Δημιουργήθηκε από τον Guido van Rossum το 1991 και πήρε το όνομά της από την κωμική σειρά «Monty Python's Flying Circus» (όχι από το φίδι, αν και το λογότυπό της έχει δύο φίδια).
12.1.1 Δύο κόσμοι: μεταγλώττιση vs ερμηνεία
Η C είναι μεταγλωττιζόμενη γλώσσα. Δηλαδή, ένα ειδικό πρόγραμμα (ο μεταγλωττιστής) διαβάζει όλο τον κώδικά μας και τον μετατρέπει σε εκτελέσιμο αρχείο, που μετά τρέχει.
Η Python είναι διερμηνευόμενη γλώσσα. Δηλαδή, ένα πρόγραμμα (ο διερμηνέας) διαβάζει τον κώδικά μας γραμμή-γραμμή και τον εκτελεί αμέσως, χωρίς ενδιάμεσο εκτελέσιμο.
| C | Python | |
|---|---|---|
| Τρόπος εκτέλεσης | Μεταγλώττιση → εκτελέσιμο | Άμεση εκτέλεση από διερμηνέα |
| Ταχύτητα | Πολύ γρήγορη | Πιο αργή |
| Εκμάθηση | Πιο απαιτητική | Πιο εύκολη |
| Γραμμές κώδικα | Περισσότερες | Λιγότερες |
| Τυπική χρήση | Συστήματα, ενσωματωμένος προγραμματισμός | Web, data science, αυτοματισμοί, AI |
12.2 Γιατί να μάθουμε Python
Η Python σήμερα είναι μία από τις πιο δημοφιλείς γλώσσες παγκοσμίως, επειδή:
- Απλή σύνταξη: ο κώδικας μοιάζει με ψευδοκώδικα, διαβάζεται σχεδόν σαν αγγλικά.
- Χωρίς αγκύλες: δεν χρειάζεται να γράφουμε
{και}για να ομαδοποιήσουμε εντολές — αρκεί η στοίχιση. - Δωρεάν και ανοιχτή: την κατεβάζουμε δωρεάν και τρέχει σε Windows, macOS, Linux.
- Τεράστια κοινότητα: υπάρχουν χιλιάδες έτοιμες βιβλιοθήκες για ό,τι μπορείτε να φανταστείτε.
- Πολλές εφαρμογές: από απλά scripts μέχρι μηχανική μάθηση, ανάλυση δεδομένων, web sites, παιχνίδια.
12.2.1 Σύγκριση: «Γεια σου, κόσμε!» σε C και Python
Ας δούμε το ίδιο πρόγραμμα στις δύο γλώσσες:
Σε C:
Σε Python:
#include, χωρίς main, χωρίς return, χωρίς ερωτηματικό.
12.2.2 Στοίχιση (indentation) αντί για αγκύλες
Στην Python, οι εντολές που ανήκουν μαζί ομαδοποιούνται με στοίχιση (indentation) και όχι με αγκύλες { } όπως στη C ή στη Java.
Στην Python
Παράδειγμα:
Οι δύο εντολές:
είναι στοιχισμένες πιο μέσα, άρα ανήκουν στο if.
Η τελευταία:
δεν έχει στοίχιση, άρα είναι έξω από το if.
Στη C αντίθετα
Στην C programming language χρειάζονται αγκύλες:
Οι { } δείχνουν ποιες εντολές ανήκουν μαζί.
Γιατί η Python το κάνει έτσι;
Η Python θέλει ο κώδικας να είναι:
- καθαρός,
- ευανάγνωστος,
- με σωστή μορφοποίηση.
Γι' αυτό η στοίχιση δεν είναι απλώς εμφάνιση — έχει σημασία για το πρόγραμμα.
Στην Python αυτό είναι λάθος:
γιατί λείπει η στοίχιση. Πρέπει:
Κανόνας
- οι εντολές του ίδιου block πρέπει να έχουν ακριβώς την ίδια στοίχιση
- συνήθως χρησιμοποιούμε 4 κενά
✔ σωστό
❌ λάθος (διαφορετικά κενά)
- Στην Python:
- η στοίχιση καθορίζει τα blocks
- δεν χρειάζονται
{ }
- Στη C:
- τα blocks μπαίνουν μέσα σε
{ }
- τα blocks μπαίνουν μέσα σε
12.3 Εγκατάσταση Python
Για να γράφουμε και να τρέχουμε προγράμματα Python στον υπολογιστή μας, χρειαζόμαστε δύο πράγματα:
- Τον διερμηνέα της Python (το πρόγραμμα που εκτελεί τον κώδικά μας).
- Έναν επεξεργαστή κειμένου ή IDE για να γράφουμε τον κώδικά μας.
12.3.1 Βήμα 1: Εγκατάσταση του διερμηνέα
- Πηγαίνουμε στο
https://www.python.org - Κατεβάζουμε την τελευταία έκδοση (κουμπί Downloads).
- Τρέχουμε το αρχείο εγκατάστασης.
- Πολύ σημαντικό: στα Windows, επιλέγουμε το checkbox «Add Python to PATH» πριν πατήσουμε Install.
python. Καλύτερα να ξανατρέξουμε το installer και να το διορθώσουμε.
12.3.2 Βήμα 2: Έλεγχος εγκατάστασης
Ανοίγουμε ένα τερματικό (Command Prompt στα Windows, Terminal σε macOS/Linux) και γράφουμε:
Αν δούμε κάτι σαν Python 3.12.0, η εγκατάσταση πέτυχε.
12.3.3 Βήμα 3: Πρόγραμμα συγγραφής κώδικα
Μπορούμε να γράψουμε κώδικα Python σε:
- IDLE: το επίσημο, απλό περιβάλλον που έρχεται μαζί με την Python.
- Visual Studio Code: δωρεάν, πολύ δημοφιλές, με πρόσθετα για Python.
- PyCharm: εξειδικευμένο IDE μόνο για Python (υπάρχει δωρεάν έκδοση «Community»).
- Thonny: πολύ απλό, ιδανικό για αρχάριους.
12.4 Το πρώτο μας πρόγραμμα
Ας γράψουμε το πρώτο μας πρόγραμμα στην Python. Ανοίγουμε το IDLE (ή τον επεξεργαστή της προτίμησής μας), και πληκτρολογούμε:
Αποθηκεύουμε το αρχείο με όνομα hello.py (η κατάληξη .py δηλώνει ότι είναι αρχείο Python) και το τρέχουμε. Θα δούμε:
12.4.1 Παρατηρήσεις στο πρώτο μας πρόγραμμα
- Δεν χρειάζεται
main: ο κώδικας εκτελείται από πάνω προς τα κάτω, γραμμή-γραμμή. - Δεν χρειάζονται
{και}: η Python δεν χρησιμοποιεί άγκιστρα. - Δεν χρειάζεται
;: κάθε γραμμή τελειώνει με το τέλος γραμμής, όχι με ερωτηματικό. - Δεν χρειάζεται
#include: ηprintείναι ενσωματωμένη στη γλώσσα.
12.4.2 Σχόλια στην Python
Όπως και στη C, μπορούμε να γράψουμε σχόλια — κείμενο που αγνοεί ο διερμηνέας. Στην Python χρησιμοποιούμε τον χαρακτήρα #:
// ή /* ... */. Στην Python μόνο #.
12.5 Η built-in συνάρτηση print()
Η print() είναι η αντίστοιχη της printf της C: εμφανίζει κείμενο στην οθόνη.
Πιο τεχνικά, η print() είναι μια ενσωματωμένη συνάρτηση (built-in function) της Python. Αυτό σημαίνει ότι υπάρχει «έτοιμη» μέσα στη γλώσσα — δεν χρειάζεται να την εισάγουμε από κάπου, όπως κάναμε στη C με το #include <stdio.h> για την printf.
Σε παλιότερα εγχειρίδια ή πρόχειρα κείμενα θα δείτε την print να αναφέρεται ως «εντολή». Αυτό ίσχυε στην Python 2, όπου γράφαμε print "hello" χωρίς παρενθέσεις. Από την Python 3 και μετά, όμως, η print() είναι επίσημα συνάρτηση, για τους εξής λόγους:
- Καλείται με παρενθέσεις:
print(...)— όπως κάθε συνάρτηση. - Δέχεται ορίσματα μέσα στις παρενθέσεις.
- Επιστρέφει τιμή (την ειδική τιμή
None, αλλά επιστρέφει). - Μπορεί να ανατεθεί σε μεταβλητή ή να περαστεί ως όρισμα σε άλλη συνάρτηση, όπως ακριβώς κάθε άλλη συνάρτηση.
Αφού ξέρουμε ήδη από τη C τι είναι μια συνάρτηση, ας χρησιμοποιούμε τη σωστή ορολογία και εδώ.
12.5.1 Σύνταξη της print()
Για να καλέσουμε την print(), γράφουμε το όνομά της, ανοίγουμε παρενθέσεις, βάζουμε μέσα αυτό που θέλουμε να εμφανίσει και κλείνουμε τις παρενθέσεις:
Δηλαδή τα τρία βασικά μέρη της κλήσης είναι:
- Το όνομα της συνάρτησης:
print - Οι παρενθέσεις
( )— χωρίς αυτές, η Python δεν εκτελεί τη συνάρτηση. - Το όρισμα (ή τα ορίσματα) μέσα στις παρενθέσεις — ό,τι θέλουμε να εμφανιστεί στην οθόνη.
- Ένα αλφαριθμητικό (κείμενο μέσα σε εισαγωγικά):
print("Γεια") - Ένας αριθμός:
print(42) - Μια μεταβλητή:
print(x) - Μια αριθμητική παράσταση:
print(2 + 3) - Πολλά από τα παραπάνω, χωρισμένα με κόμμα:
print("Σύνολο:", a + b)
Στη C, η printf δεν αλλάζει από μόνη της γραμμή — αν θέλαμε νέα γραμμή, γράφαμε ρητά \n μέσα στο string. Στην Python, η print() κάνει αυτόματα αλλαγή γραμμής στο τέλος, χωρίς να χρειάζεται να κάνουμε κάτι.
12.5.2 Βασική χρήση
print() αλλάζει αυτόματα γραμμή στο τέλος. Δεν χρειαζόμαστε \n όπως στη C.
12.5.3 Εκτύπωση αριθμών
Δεν χρειάζονται εισαγωγικά για τους αριθμούς. Επίσης, η print μπορεί να υπολογίσει εκφράσεις πριν τις εμφανίσει.
12.5.4 Πολλαπλά ορίσματα
Μπορούμε να δώσουμε στην print() περισσότερα από ένα ορίσματα, χωρισμένα με κόμμα. Θα τα εμφανίσει διαδοχικά, με ένα κενό ανάμεσά τους:
12.6 Μεταβλητές
Στην Python, μια μεταβλητή είναι ένα όνομα που «κρατάει» μια τιμή. Σε αντίθεση με τη C, δεν χρειάζεται να δηλώσουμε τον τύπο της μεταβλητής.
12.6.1 Δημιουργία μεταβλητής
Στη C θα γράφαμε:
Στην Python: ούτε τύπο δηλώνουμε, ούτε ερωτηματικό βάζουμε. Η Python καταλαβαίνει μόνη της τον τύπο από την τιμή.
12.6.2 Βασικοί τύποι τιμών
| Τύπος | Όνομα στην Python | Παράδειγμα |
|---|---|---|
| Ακέραιος | int | 42, -7, 0 |
| Δεκαδικός | float | 3.14, -0.5 |
| Αλφαριθμητικό | str | "Γεια", 'Python' |
| Λογικός | bool | True, False |
"..." και μονά '...'. Είναι εντελώς το ίδιο.
12.6.3 Έλεγχος του τύπου
Μπορούμε να ρωτήσουμε την Python τι τύπος είναι μια μεταβλητή, με τη συνάρτηση type():
12.6.4 Αλλαγή τιμής μιας μεταβλητής
Μπορούμε ανά πάσα στιγμή να αλλάξουμε την τιμή — ακόμα και τον τύπο — μιας μεταβλητής:
int. Στην Python μπορούμε — και αυτό μπορεί να είναι παγίδα! Καλό είναι να κρατάμε σταθερό τύπο για κάθε μεταβλητή, για να μην μπερδευόμαστε.
12.6.5 Κανόνες ονομασίας μεταβλητών
Όπως και στη C, υπάρχουν κανόνες για το πώς ονομάζουμε μεταβλητές:
- Αρχίζουν με γράμμα (a-z, A-Z) ή κάτω παύλα
_. - Μπορούν να περιέχουν γράμματα, αριθμούς, κάτω παύλες.
- Δεν επιτρέπονται κενά ή σύμβολα όπως
-,!,?. - Δεν ξεκινούν με αριθμό.
- Δεν επιτρέπονται δεσμευμένες λέξεις (
if,for,print, ...). - Πεζά / κεφαλαία διαφέρουν:
ageκαιAgeείναι διαφορετικές μεταβλητές.
12.6.6 Πράξεις με μεταβλητές
Μπορούμε να κάνουμε αριθμητικές πράξεις, όπως ακριβώς στη C:
/ δίνει πάντα δεκαδικό αποτέλεσμα. Αν θέλουμε «ακέραια διαίρεση» (όπως στη C με δύο int), χρησιμοποιούμε το //:
12.6.7 Μια ολοκληρωμένη χρήση: εμβαδό ορθογωνίου
12.7 Σύνοψη
📋 Τι μάθαμε σε αυτό το κεφάλαιο
- Η Python είναι μια διερμηνευόμενη γλώσσα προγραμματισμού, σχεδιασμένη να είναι απλή και ευανάγνωστη.
- Σε σχέση με τη C: δεν χρειάζεται
main,{ },;, ούτε δήλωση τύπου. - Εγκαθιστούμε την Python από το
python.org, προσέχοντας να επιλέξουμε «Add Python to PATH». - Τα αρχεία Python έχουν κατάληξη .py.
- Η built-in συνάρτηση
print()εμφανίζει κείμενο ή αριθμούς στην οθόνη — αλλάζει αυτόματα γραμμή. - Τα σχόλια ξεκινούν με
#. - Οι μεταβλητές δημιουργούνται με απλή ανάθεση, χωρίς δήλωση τύπου:
age = 20. - Βασικοί τύποι:
int,float,str,bool. - Η διαίρεση
/δίνει δεκαδικό, η//δίνει ακέραιο.
12.8 Ασκήσεις
Άσκηση 1 — Παρουσίαση
Γράψτε ένα πρόγραμμα που εμφανίζει στην οθόνη το όνομά σας, την ηλικία σας και την πόλη σας, σε τρεις διαφορετικές γραμμές, χρησιμοποιώντας τρεις εντολές print().
Άσκηση 2 — Πράξεις
Δημιουργήστε δύο μεταβλητές a και b με τιμές 15 και 4. Τυπώστε το άθροισμα, τη διαφορά, το γινόμενο, την κανονική διαίρεση (/), την ακέραια διαίρεση (//) και το υπόλοιπο (%) τους.
Άσκηση 3 — Εμβαδό κύκλου
Δημιουργήστε μια μεταβλητή pi με τιμή 3.14159 και μια μεταβλητή r με τιμή 7. Υπολογίστε το εμβαδό κύκλου με τύπο area = pi * r * r και εμφανίστε το.
Άσκηση 4 — Τύποι δεδομένων
Δημιουργήστε τέσσερις μεταβλητές: μία ακέραια, μία δεκαδική, μία αλφαριθμητική και μία λογική. Τυπώστε την τιμή και τον τύπο (type()) της καθεμίας.
Άσκηση 5 — Μέσος όρος
Δημιουργήστε τρεις μεταβλητές grade1, grade2, grade3 με τιμές 8, 9, 7. Υπολογίστε τον μέσο όρο και εμφανίστε τον στην οθόνη με ένα μήνυμα όπως «Ο μέσος όρος είναι: 8.0».
Άσκηση 6 — Μετατροπή θερμοκρασίας
Δημιουργήστε μια μεταβλητή celsius με τιμή 25 και υπολογίστε την αντίστοιχη θερμοκρασία σε Φαρενάιτ με τον τύπο F = (9/5) * C + 32. Εμφανίστε και τις δύο τιμές.