1.2.2 - Μετατροπή τύπου δεδομένων

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

Στην περίπτωση της εισόδου της ηλικίας τι μας εμποδίζει από το γράψιμο της ηλικίας με γράμματα;

Δοκιμάστε αυτό στο CLI

>>> a = input("Enter a number : ")

>>>

Sixteen

>>> 

print (a)

Πώς μπορούμε να βρούμε τι τύπου είναι μια μεταβλητή; Μπορούμε να χρησιμοποιήσουμε την εντολή type. Δοκιμάστε τον ακόλουθο κώδικα στη γραμμή εντολών εισάγοντας έναν αριθμό κινητής υποδιαστολής (π.χ. 34.5).

>>> a = input("Enter a number : ")

>>> type (a)

Όπως μπορείτε να δείτε η μεταβλητή a είναι μια συμβολοσειρά . Πρέπει να θυμάστε ότι οτιδήποτε διαβάζεται από την είσοδο, χωρίς μετατροπή, αντιμετωπίζεται ως συμβολοσειρά. Για να μετατρέψουμε μια συμβολοσειρά σε έναν ακέραιο ή σε έναν αριθμό κινητής υποδιαστολής μπορούμε να χρησιμοποιήσουμε τις εντολές μετατροπής δεδομένων int() ή float().

Τώρα δοκιμάστε τις ακόλουθες εντολές διαδοχικά:

>>> a = input("Enter a number : ")

>>> 17

>>> print (a)

>>> print(a+2)

Η προηγούμενη εντολή δημιουργεί ένα σφάλμα. Γιατί; Μάθετε χρησιμοποιώντας τις ακόλουθες εντολές.

>>> type(a)

>>> a = int(a)

>>> type(a)

>>> print(a)

>>> print(a+2)

>>> a = float(a)

>>> type(a)

>>> print(a+5)