Datentyp-Hierarchie (Wiederholung)

Zu Deiner besseren Orientierung zeige ich hier nochmals die Datentyp-Hierarchie von Python.

Python Datentyphierarchie
Datentyp-Hierarchie in Python

Datentypkonvertierungen

Grundsätzlich lassen sich die verschiedenen Datentypen ineinander umrechnen, so dies sinnvoll machbar ist. Dabei wird der Zieldatentyp genannt und in Klammern der Wert des Ursprungsdatentyps notiert. Im Rahmen der Objektorientierung wirst Du lernen, dass es sich hierbei um einen sogenannten Konstruktoraufruf handelt. Aus dem übergebenen Wert wird der Zieldatentyp konstruiert.

>>> bool(1)
    True
>>> bool(0)
    False
>>> str(42)
    '42'
>>> int(42.0)
    42
>>> int(float("42.0"))
    42

Bei der letzten Anweisung beachte bitte Folgendes: Eine Zeichenkette, die einer Gleitkommazahl entspricht, kann nicht direkt in int umgewandelt werden. Der Punkt ist für Ganzzahlen nicht definiert. Daher wandelt man sie erst in eine Gleitkommazahl um. Die wird dann ihrer Nachkommastellen beraubt, um in eine ganze Zahl konvertiert zu werden.

Die oben beschriebenen Konvertierungen sind explizite Typumwandlungen. Wenn kein Datenverlust zu befürchten ist, nimmt Python notwendige Typumwandlungen zumeist automatisch vor. Das passiert beispielsweise bei der Konvertierung ganzer Zahlen in Gleitkommazahlen, wenn diese gemeinsam in einem Term stehen. Auf mögliche Einschränkungen des Wertebereichs nimmt Python allerdings keine Rücksicht!