Python-Typkonvertierung und Typumwandlung
Python-Typkonvertierung und Typumwandlung
In diesem Artikel erfahren Sie mehr über die Typkonvertierung und die Verwendung der Typkonvertierung.
Bevor Sie Typkonvertierung in Python lernen, sollten Sie Kenntnisse über Python-Datentypen haben.
Typumwandlung
Der Prozess der Konvertierung des Werts eines Datentyps (Integer, String, Float usw.) in einen anderen Datentyp wird als Typkonvertierung bezeichnet. Python hat zwei Arten der Typumwandlung.
- Implizite Typumwandlung
- Explizite Typumwandlung
Implizite Typumwandlung
Bei der impliziten Typkonvertierung konvertiert Python automatisch einen Datentyp in einen anderen Datentyp. Dieser Vorgang erfordert keine Benutzerbeteiligung.
Sehen wir uns ein Beispiel an, in dem Python die Konvertierung des niedrigeren Datentyps (Integer) in den höheren Datentyp (Float) fördert, um Datenverluste zu vermeiden.
Beispiel 1:Umwandlung einer Ganzzahl in Float
num_int = 123
num_flo = 1.23
num_new = num_int + num_flo
print("datatype of num_int:",type(num_int))
print("datatype of num_flo:",type(num_flo))
print("Value of num_new:",num_new)
print("datatype of num_new:",type(num_new))
Wenn wir das obige Programm ausführen, lautet die Ausgabe:
datatype of num_int: <class 'int'> datatype of num_flo: <class 'float'> Value of num_new: 124.23 datatype of num_new: <class 'float'>
Im obigen Programm,
- Wir fügen zwei Variablen num_int hinzu und num_flo , wobei der Wert in num_new gespeichert wird .
- Wir werden uns jeweils den Datentyp aller drei Objekte ansehen.
- In der Ausgabe sehen wir den Datentyp von num_int ist ein
integer
während der Datentyp von num_flo ist einfloat
. - Außerdem können wir num_new sehen hat einen
float
Datentyp, weil Python kleinere Datentypen immer in größere Datentypen umwandelt, um Datenverlust zu vermeiden.
Lassen Sie uns nun versuchen, einen String und eine Ganzzahl hinzuzufügen, und sehen, wie Python damit umgeht.
Beispiel 2:Hinzufügen des Datentyps string(höher) und des Datentyps integer(niedriger)
num_int = 123
num_str = "456"
print("Data type of num_int:",type(num_int))
print("Data type of num_str:",type(num_str))
print(num_int+num_str)
Wenn wir das obige Programm ausführen, lautet die Ausgabe:
Data type of num_int: <class 'int'> Data type of num_str: <class 'str'> Traceback (most recent call last): File "python", line 7, in <module> TypeError: unsupported operand type(s) for +: 'int' and 'str'
Im obigen Programm,
- Wir fügen zwei Variablen num_int hinzu und num_str .
- Wie wir der Ausgabe entnehmen können, haben wir
TypeError
erhalten . Python kann unter solchen Bedingungen keine implizite Konvertierung verwenden. - Python hat jedoch eine Lösung für diese Art von Situationen, die als explizite Konvertierung bekannt ist.
Explizite Typumwandlung
Bei der expliziten Typkonvertierung konvertieren Benutzer den Datentyp eines Objekts in den erforderlichen Datentyp. Wir verwenden die vordefinierten Funktionen wie int()
, float()
, str()
, usw., um eine explizite Typkonvertierung durchzuführen.
Diese Art der Konvertierung wird auch Typecasting genannt, da der Benutzer den Datentyp der Objekte umwandelt (ändert).
Syntax:
<required_datatype>(expression)
Die Typumwandlung kann erfolgen, indem dem Ausdruck die erforderliche Datentypfunktion zugewiesen wird.
Beispiel 3:Addition von String und Integer durch explizite Konvertierung
num_int = 123
num_str = "456"
print("Data type of num_int:",type(num_int))
print("Data type of num_str before Type Casting:",type(num_str))
num_str = int(num_str)
print("Data type of num_str after Type Casting:",type(num_str))
num_sum = num_int + num_str
print("Sum of num_int and num_str:",num_sum)
print("Data type of the sum:",type(num_sum))
Wenn wir das obige Programm ausführen, lautet die Ausgabe:
Data type of num_int: <class 'int'> Data type of num_str before Type Casting: <class 'str'> Data type of num_str after Type Casting: <class 'int'> Sum of num_int and num_str: 579 Data type of the sum: <class 'int'>
Im obigen Programm
- Wir fügen num_str hinzu und num_int variabel.
- Wir haben num_str konvertiert von String (höher) zu Integer (niedriger) Typ mit
int()
Funktion, um die Addition durchzuführen. - Nach der Konvertierung von num_str zu einem ganzzahligen Wert kann Python diese beiden Variablen addieren.
- Wir haben die num_sum Wert und Datentyp müssen Integer sein.
Wichtige Punkte, die Sie sich merken sollten
- Typumwandlung ist die Umwandlung eines Objekts von einem Datentyp in einen anderen Datentyp.
- Die implizite Typkonvertierung wird automatisch vom Python-Interpreter durchgeführt.
- Python vermeidet den Datenverlust bei der impliziten Typkonvertierung.
- Die explizite Typkonvertierung wird auch als Type Casting bezeichnet, die Datentypen von Objekten werden mithilfe vordefinierter Funktionen vom Benutzer konvertiert.
- Beim Type Casting kann es zu Datenverlusten kommen, wenn wir das Objekt auf einen bestimmten Datentyp setzen.
Python
- C#-Typkonvertierung
- Python-Schlüsselwörter und -Identifikatoren
- Python-Anweisung, Einrückung und Kommentare
- Python-Variablen, -Konstanten und -Literale
- Python-Datentypen
- Python-Eingabe, -Ausgabe und -Import
- Python Globale, lokale und nicht lokale Variablen
- Python-Zahlen, Typumwandlung und Mathematik
- Python-Verzeichnis- und Dateiverwaltung
- Python-Fehler und eingebaute Ausnahmen