In diesem Beitrag möchte ich Dir das Konzept der Datentypen in Python näherbringen. Ich werde die grundlegenden Konzepte erklären, sie mit anderen Sprachen vergleichen, den Umgang mit Datentypen und dynamischer Typisierung erläutern und viele Codebeispiele bereitstellen. Am Ende werde ich auch auf Typehints eingehen und erklären, ob sich der Datentyp einer Variable im Laufe der Ausführung ändern kann.
Grundlegende Konzepte
Python hat verschiedene eingebaute Datentypen, die es ermöglichen, unterschiedliche Arten von Daten zu repräsentieren. Einige der grundlegenden Datentypen sind:
– `int`: Ganzzahlen (z.B. 42)
– `float`: Fließkommazahlen (z.B. 3.14)
– `str`: Zeichenketten (z.B. “Hello, World!”)
– `bool`: Boolesche Werte (True oder False)
x = 42 # x ist jetzt vom Typ int
y = 3.14 # y ist jetzt vom Typ float
z = "Hello" # z ist jetzt vom Typ str
w = True # w ist jetzt vom Typ bool
Vergleich mit anderen Sprachen
In statisch typisierten Sprachen wie Java oder C++ musst Du den Datentyp einer Variable bei der Deklaration angeben:
int x = 42;
float y = 3.14f;
String z = "Hello, World!";
boolean w = true;
In Python hingegen erkennt die Sprache automatisch den Typ der Variable basierend auf dem zugewiesenen Wert. Dies führt zu kürzerem und leichter lesbarem Code.
Dynamische Typisierung
Python ist eine dynamisch typisierte Sprache, was bedeutet, dass der Typ einer Variable zur Laufzeit bestimmt wird. Du kannst den Typ einer Variable jederzeit ändern, indem Du ihr einen Wert eines anderen Typs zuweist:
x = 42 # x ist jetzt vom Typ int
x = 3.14 # x ist jetzt vom Typ float
x = "Hello" # x ist jetzt vom Typ str
Dies ist ein großer Unterschied zu statisch typisierten Sprachen, in denen der Typ einer Variable bei der Deklaration festgelegt wird und nicht mehr geändert werden kann.
Typehints
Python 3.5 führte Typehints ein, die es ermöglichen, den erwarteten Typ einer Variable oder einer Funktion im Code anzugeben. Typehints sind optional, aber sie können die Lesbarkeit Deines Codes verbessern.
def greet(name: str) -> str:
return "Hello, " + name
In diesem Beispiel haben wir Typehints verwendet, um anzugeben, dass die Funktion `greet` einen Parameter `name` vom Typ `str` erwartet und einen Wert vom Typ `str` zurückgibt.
Du kannst Typehints auch für Variablen verwenden:
x: int = 42
y: str = "Hello, World!"
z: bool = True
Ändern des Datentyps im Laufe der Ausführung
In Python kann sich der Datentyp einer Variable im Laufe der Ausführung ändern, da die Sprache dynamisch typisiert ist. Das bedeutet, dass Du einer Variable einen Wert eines anderen Typs zuweisen kannst, und Python