Το casting αναφέρεται στη μετατροπή ενός τύπου δεδομένων σε έναν διαφορετικό τύπο. Αυτό είναι χρήσιμο όταν χρειάζεται να εκτελεστεί μια εργασία με μια μεταβλητή σε μια συγκεκριμένη μορφή δεδομένων ή όταν θέλουμε να πραγματοποιήσουμε μια συγκεκριμένη λειτουργία που απαιτεί έναν συγκεκριμένο τύπο δεδομένων.

Στην Python, μπορούμε να χρησιμοποιήσουμε τις ενσωματωμένες συναρτήσεις τύπων (όπως int(), float(), str(), κλπ.) για να πραγματοποιήσουμε casting. Οι συναρτήσεις αυτές παίρνουν ένα όρισμα και το μετατρέπουν σε έναν διαφορετικό τύπο δεδομένων, αν είναι δυνατόν. Αν δεν είναι δυνατή η μετατροπή, τότε μπορεί να προκύψει ένα σφάλμα ή μια εξαίρεση.

Παρακάτω παρουσιάζονται μερικά παραδείγματα casting στην Python:

# Casting από int σε float
x = 10
y = float(x)

# Casting από float σε int
a = 2.7
b = int(a)

# Casting από int σε str
m = 5
n = str(m)

Σημειώστε ότι το casting μπορεί να οδηγήσει σε απώλεια πληροφοριών ή ανεπιθύμητα αποτελέσματα, ανάλογα με τη φύση των δεδομένων που μετατρέπονται και τη μορφή που προορίζονται να πάρουν.

Στην Python, μπορούμε να χρησιμοποιήσουμε τις ενσωματωμένες συναρτήσεις τύπων (constructor functions) για να πραγματοποιήσουμε μετατροπές τύπων δεδομένων. Οι συναρτήσεις αυτές είναι:

  • int(): Μετατρέπει έναν ακέραιο, έναν δεκαδικό αριθμό ή ένα αλφαριθμητικό που αναπαριστά έναν ακέραιο, σε ακέραιο αριθμό. Αν μετατρέπετε έναν δεκαδικό αριθμό, θα αγνοηθούν οι δεκαδικές ψηφία.
  • float(): Μετατρέπει έναν ακέραιο, έναν δεκαδικό αριθμό ή ένα αλφαριθμητικό που αναπαριστά έναν δεκαδικό ή ακέραιο, σε αριθμό κινητής υποδιαστολής (δεκαδικό αριθμό). Αν μετατρέπετε έναν ακέραιο, θα προστεθεί μηδενικό δεκαδικό μέρος.
  • str(): Μετατρέπει μια ευρεία γκάμα τύπων δεδομένων σε αλφαριθμητικό. Μπορεί να μετατρέψει αλφαριθμητικά, ακέραιους αριθμούς, δεκαδικούς αριθμούς και άλλους τύπους δεδομένων σε αλφαριθμητική μορφή.

Παραδείγματα χρήσης:

# Μετατροπή σε int
x = int(5.6) # 5
y = int("10") # 10

# Μετατροπή σε float
a = float(10) # 10.0
b = float("3.14") # 3.14

# Μετατροπή σε str
m = str(100) # "100"
n = str(3.14) # "3.14"

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

[adinserter block=”2″]

Μερικά παραδείγματα με τις συναρτήσεις αυτές:

# Παραδείγματα με τη συνάρτηση int()
x = int(2.8)
y = int("4")
z = int("101", 2) # δέκαδικό σύστημα στο δυαδικό σύστημα
print(x)  # Εξοδος: 2
print(y)  # Εξοδος: 4
print(z)  # Εξοδος: 5

# Παραδείγματα με τη συνάρτηση float()
x = float(5)
y = float("3.7")
z = float("5")
print(x)  # Εξοδος: 5.0
print(y)  # Εξοδος: 3.7
print(z)  # Εξοδος: 5.0

# Παραδείγματα με τη συνάρτηση str()
x = str(5)
y = str(3.7)
z = str(5 + 8j)
print(x)  # Εξοδος: "5"
print(y)  # Εξοδος: "3.7"
print(z)  # Εξοδος: "(5+8j)"
7 Ιουνίου, 2023
top
error: Content is protected !!
Μετάβαση σε γραμμή εργαλείων