🍐Κ2 - Μεταβλητές

Στο προηγούμενο Κεφάλαιο μάθαμε ότι τα προγράμματα εκτελούνται στην Μνήμη RAM.

Όπως γνωρίζετε, από την εμπειρία σας με τα κινητά, τα λαπτοπ ή άλλες υπολογιστικές μηχανές τις οποίες έχετε περιεργαστεί, όσο περισσότερη μνήμη RAM έχει ένα υπολογιστικό σύστημα τόσο το καλύτερο. Η μνήμη RAM μετριέται σε Gigabytes (GB).

Φανταστείτε ότι η μνήμη RAM είναι ένα πελώριο συρτάρι όπου μπορείς να αποθηκεύσεις ότι επιθυμείς για μελλοντική χρήση ή αναφορά. Δεν θα ήταν φοβερό αυτό;

Ε λοιπόν η μνήμη RAM είναι όντως φοβερή! Είναι τόσο μεγάλη που μπορεί να αποθηκεύσει εξαιρετικά μεγάλο όγκο δεδομένων και τα «συρτάρια» της είναι οι λεγόμενες Μεταβλητές.

 

Μία μεταβλητή έχει τρία (3) χαρακτηριστικά:

  • Όνομα  🔒
  • Τύπος 🔒
  • Τιμή 🔓

 

Μόνο η τιμή μιας μεταβλητής μπορεί να αλλάξει ύστερα από την δημιουργία της, όλα τα άλλα παραμένουν ίδια μέχρι την καταστροφή της. 

Οι τύποι μεταβλητών είναι σαν την εθνικότητα ενός ανθρώπου. Ας πούμε ότι μια μεταβλητή x είναι ο "Γιάννης" και είναι Έλληνας. Τότε στο παράδειγμά μας η τιμή "Γιάννης" είναι το περιεχόμενο της μεταβλητής, η τιμή Έλληνας είναι ο τύπος της μεταβλητής και το x είναι το όνομα της μεταβλητής.

 

📍Ευτυχώς στην ζωή δεν είναι έτσι και μπορούμε να αλλάξουμε εθνικότητες :) Οπότε απλά πάρτε το ως παράδειγμα προς κατανόηση των μεταβλητών και όχι κατά γράμμα.

 


 

ΤΥΠΟΙ ΜΕΤΑΒΛΗΤΩΝ

Οι τύποι μεταβλητών («εθνικότητες») που υποστηρίζει η Python είναι:

  • ΑΚΕΡΑΙΕΣ (INTEGER)
    δηλαδή αριθμοί χωρίς υποδιαστολή. Π.χ. 50
     
  • ΠΡΑΓΜΑΤΙΚΕΣ (FLOAT)
    δηλαδή αριθμοί με υποδιαστολή. Π.χ. 44.7
     
  • ΧΑΡΑΚΤΗΡΕΣ (STRING)
    δηλαδή συνδυασμός γραμμάτων & αριθμών μέσα σε αυτάκια (quotes). Π.χ.  "John2"
     
  • ΛΟΓΙΚΕΣ (BOOLEAN)
    δηλαδή ON/OFF, Αλήθεια/Ψέματα κλπ. Για περιπτώσεις που έχουν αντίστροφα ενδεχόμενα.

 

Ο κάθε τύπος έχει την χρησιμότητά του και τον επιλέγεις για μια μεταβλητή ανάλογα με το πρόβλημα που έχει ανατεθεί και τι σκοπεύεις να κάνεις με την μεταβλητή στο πρόγραμμά σου.

 

 

ΠΑΡΑΔΕΙΓΜΑΤΑ

Μαθητές (students)

Η μεταβλητή students είναι Ακέραιου (Integer) τύπου. Γιατί δεν θα έβγαζε νόημα να είχαμε δεκαδικά ψηφία π.χ. 4.3 μαθητές το οποίο θα την έκανε Πραγματικού (Float) τύπου.

 

Απόσταση (distance)

Η μεταβλητή distance είναι Πραγματικού (Float) τύπου. Διότι υπάρχει περίπτωση να έχουμε και τιμή με υποδιαστολή π.χ. 44.7 χλμ.

 

Όνομα (firstname)

Η μεταβλητή firstname είναι τύπου Χαρακτήρων (String) καθώς όλες οι αλφαριθμητικές τιμές αποθηκεύονται ως τύπου χαρακτήρα π.χ. "John2"

 

Ρύθμιση (setting)

Η μεταβλητή setting είναι τύπου Λογική (Boolean). Διότι, έχει δύο πιθανές καταστάσεις μόνο. Πολλές φορές θέλουμε να υπάρχει μια δυϊκότητα π.χ. άσπρο-μαύρο, ανοιχτό-κλειστό κ.ά. Ο Λογικός τύπος το προσφέρει αυτό καθώς έχει μόνο δύο τιμές True (αληθής) ή False (ψευδής). Συναντάται πολύ συχνά σε ρυθμίσεις λογισμικού ή συσκευών.

 

Παράδειγμα 01 - Τύποι Μεταβλητών

students = 170 distance = 44.7 firstname = "John" setting = True print(f"students: {students}") print(f"distance: {distance}") print(f"firstname: {firstname}") print(f"setting: {setting}") print = display