Skip to main content

Datentypen

Wir haben bereits häufig den Begriff Datentyp benutzt und auch schon einige Datentypen kennengelernt. Einerseits kennen wir zum Beispiel die Datentypen int, float zur Repräsentation von Ganzzahlen respektive Gleitkommazahlen, sowie den Datentyp str zur Repräsentation von Texten. Neben diesen elementaren Datentypen kennen wir auch die Datentypen tuple und list zur Repräsentation von Sequenzen.

In diesem Artikel diskutieren wir, was denn genau ein Datentyp ausmacht und Aspekte die wir später beim definieren eigener Datentypen berücksichtigen müssen.

Was ist ein Datentyp

Etwas abstrakt formuliert ist ein Datentyp nichts mehr als eine Menge von Werte zusammen mit Operationen die auf diesen Werten definiert sind. Jeder Wert den wir in Python darastellen können ist eine Instanz eines bestimmten Datentyps. Der Datentyp int zum Beispiel definiert die Menge der Zahlen im Intervall (2147483648, 2147483647)(-2147483648,\ 2147483647). Jede Instanz von diesem Typ kann also nur einen Wert der in diesem Intervall liegt entsprechen. Zusätzlich sind auf dem Datentyp int Operationen zum Arbeiten mit Zahlen definiert. So stellt uns Python zum Beispiel die arithmetischen Operationen (+, , , /+,\ -,\ \cdot,\ /) zur Verfügung und gibt uns die Möglichkeit zwei Zahlen zu vergleichen.

Der Datentyp tuple hingegen repräsentiert die Menge aller möglichen Sequenzen von Werten beliebigen Typs einer bestimmten Länge. Beispiele für auf diesem Datentyp definierten Operationen sind die Operation [] um auf Elemente zuzugreifen, oder die Operation len um die Länge eines Tupels zu bestimmen. Wie bei den Zahlen, stellt uns Tupel auch eine Operation zur Verfügung um zwei Instanzen des Datentyps Tupel auf Gleichheit zu überprüfen. Wir haben aber keine Operation zur Verfügung um zwei Tupel zu vergleichen. Dies würde ja auch keinen Sinn ergeben, da wir zum Beispiel nicht sagen können, ob das Tupel ("text", 7) kleiner ist als das Tupel (1, 8).

In den folgenden Lerneinheiten werden wir das Konzept der Klassen kennenlernen um Datentypen zu definieren.

Fragen und Kommentare

Haben Sie Fragen oder Kommentare zu diesem Artikel? Nutzen Sie das Forum und helfen Sie sich und Ihren Mitstudierenden dieses Thema besser zu verstehen.