Μάθημα : Προγραμματισμός στην Python

1701050396 - ΜΙΧΑΗΛ ΣΦΥΡΑΚΗΣ

Ενότητες μαθήματος

Ενότητα 2 - Εντολές Εισόδου - Εξόδου

Σε αυτή την ενότητα θα ανακαλύψουμε πώς να κάνουμε τα προγράμματά μας πραγματικά διαδραστικά, μαθαίνοντας να ελέγχουμε τη ροή των πληροφοριών από και προς τον χρήστη.
Συγκεκριμένα, η ενότητα περιλαμβάνει:
  • Την εντολή εξόδου print(): Πώς εμφανίζουμε μηνύματα, αριθμούς και αποτελέσματα πράξεων στην Κονσόλα (Shell) του Thonny, καθώς και πώς συνδυάζουμε κείμενο με μεταβλητές.
  • Την εντολή εισόδου input(): Πώς σταματάμε το πρόγραμμα για να ζητήσουμε πληροφορίες από τον χρήστη και πώς αποθηκεύουμε την απάντησή του.
  • Την «παγίδα» της input() και το Type Casting: Γιατί η Python διαβάζει τους αριθμούς ως κείμενο και πώς χρησιμοποιούμε τις συναρτήσεις int() και float() για να μπορούμε να κάνουμε σωστές μαθηματικές πράξεις.
  • Τη συνάρτηση len(): Ένα έξυπνο εργαλείο για να μετράμε αυτόματα πόσους χαρακτήρες (γράμματα, κενά ή σύμβολα) περιέχει μια λέξη ή μια φράση.
Μέσα από πρακτικά παραδείγματα, όπως η δημιουργία ενός απλού υπολογιστή αθροισμάτων και ενός μετατροπέα ύψους, θα δούμε πώς ένας κώδικας μπορεί να «επικοινωνεί» ζωντανά μαζί μας!

Τί είναι οι εντολές εισόδου - εξόδου

Οι εντολές εισόδου - εξόδου αποτελούν τον βασικό τρόπο επικοινωνίας ενός προγράμματος με τον χρήστη. Χωρίς αυτές, το πρόγραμμα θα εκτελούσε υπολογισμούς «κρυφά» στη μνήμη, χωρίς να μπορεί να δείξει τίποτα στην οθόνη ή να δεχτεί οδηγίες. Με την εντολή εξόδου print() εμφανίζουμε πληροφορίες στην οθόνη, ενώ με την εντολή εισόδου input() ζητάμε δεδομένα από τον χρήστη. Οι εντολές αυτές αποτελούν βασικές εντολές της Python και χρησιμοποιούνται σε όλα τα προγράμματα.

 

Εντολή Εξόδου print()

Η εντολή print() εμφανίζει μηνύματα, αριθμούς, αποτελέσματα πράξεων ή τιμές μεταβλητών στην οθόνη, στη δική μας περίπτωση στην Κονσόλα (Shell) του Thonny. 

 

Τρόποι Χρήσης της print()

Η Python μάς επιτρέπει να εμφανίζουμε απλό κείμενο, αποτελέσματα πράξεων, αλλά και να συνδυάζουμε κείμενο με μεταβλητές χρησιμοποιώντας το κόμμα ( , ):

print("Γεια σου, κόσμε!")

print(10)

print(5 + 3)

x = 7

print(x)

print("Ο αριθμός είναι:", x)

Η πρώτη εντολή εμφανίζει στην οθόνη το μήνυμα "Γεια σου, κόσμε!", η δεύτερη εμφανίζει τον αριθμό 10, η τρίτη εμφανίζει το αποτέλεσμα της πράξης 5 + 3, δηλαδή 8, η τέταρτη εμφανίζει την τιμή της μεταβλητής x, που είναι 7 και η πέμπτη εμφανίζει τομήνυμα "Ο αριθμός είναι:" μαζί με την τιμή της μεταβλητής x.

 

Εντολή Εισόδου input()

Η εντολή input() επιτρέπει στο πρόγραμμα να ζητήσει πληροφορίες από τον χρήστη. Κάθε φορά που η Python συναντά μια εντολή input(), σταματά την εκτέλεση του προγράμματος και περιμένει τον χρήστη να πληκτρολογήσει κάτι και να πατήσει Enter. Η τιμή που εισάγεται αποθηκεύεται σε μια μεταβλητή ως κείμενο (string), και στη συνέχεια μπορούμε να τη χρησιμοποιήσουμε σε υπολογισμούς, ελέγχους ή μηνύματα.

 

Για παράδειγμα έχουμε τον κώδικα:

name = input("Ποιο είναι το όνομά σου; ")

print("Γεια σου,", name, "!")

Πώς λειτουργεί: Η ερώτηση "Ποιο είναι το όνομά σου;" εμφανίζεται στην οθόνη. Η απάντηση που θα πληκτρολογήσει ο χρήστης αποθηκεύεται αυτόματα μέσα στο «κουτί» της μεταβλητής name

και στη συνέχεια εμφανίζεται μήνυμα χαιρετισμού με το όνομα που έχεις δώσει.

 

Η παγίδα της input() & η Μετατροπή Τύπων (Type Casting)
Προσοχή: Η εντολή input() αποθηκεύει πάντα την απάντηση του χρήστη ως κείμενο (String), ακόμα κι αν ο χρήστης πληκτρολογήσει έναν αριθμό. Αν προσπαθήσουμε να κάνουμε μαθηματικές πράξεις με μια απλή input(), το πρόγραμμά μας θα βγάλει σφάλμα. Για να το διορθώσουμε, χρησιμοποιούμε τις συναρτήσεις μετατροπής τύπων:
  • int(): Μετατρέπει το κείμενο σε ακέραιο αριθμό.
  • float(): Μετατρέπει το κείμενο σε δεκαδικό αριθμό.

Παραδείγματα χρήσης της input()

1. Άθροισμα δύο ακεραίων αριθμών

num1 = int(input("Δώσε τον πρώτο αριθμό: "))

num2 = int(input("Δώσε τον δεύτερο αριθμό: "))

print("Το άθροισμα είναι:", num1 + num2)

Εδώ ζητάει 2 αριθμούς, έναν-έναν, τους μετατρέπει σε ακέραιους και εμφανίζει το άθροισμά τους.

 

2. Υπολογισμός με δεκαδικούς αριθμούς (Μετατροπή Ύψους) 

height = float(input("Ποιο είναι το ύψος σου σε μέτρα; "))

print("Το ύψος σου σε εκατοστά είναι:", height * 100)

Σε αυτό το παράδειγμα ζητάει το ύψος σε μέτρα και τα μετατρέπει σε εκατοστά τα οποία εμφανίζει στην οθόνη.

 

Χρήσιμη εντολή: len()
Η εντολή len() (από τη λέξη length) μετράει πόσους χαρακτήρες έχει ένα string (γράμματα, κενά και σύμβολα).

name = input("Ποιο είναι το όνομά σου; ")

print("Το όνομά σου έχει", len(name), "χαρακτήρες.")

Ζητάει το όνομα του χρήστη, υπολογίζει πόσους χαρακτήρες έχει και εμφανίζει τον αριθμό στην οθόνη.