Skip to content

Datentypen

Programmieren – Variablen & Datentypen

Im letzen Kapitel haben wir gesehen, wie wir mit Variablen Werte abspeichern können. Nun wollen wir diese Werte etwas genauer unter die Lupe nehmen.

Speicherplatz ​

Schauen wir uns die folgenden Behältnisse an – für was sind diese gemacht?

Es handelt sich um Fast-Food-Verpackungen. Je nachdem, was wir verpacken möchten, nehmen wir die korrekte Verpackung. So hat ein Burger in der Pizzaschachtel kaum Platz und die Pizza in der Burger-Box ganz sicher nicht.

Allerdings lässt sich eine beliebige Pizza in der Pizzaschachtel verpacken!

Datentypen ​

Ähnlich verhält es sich mit Datentypen bei Programmiersprachen:

  • Es gibt unterschiedliche Datentypen die verschiedene Werte haben können und auch unterschiedlich viel Platz im Speicher belegen.
  • So können Zahlen binär abgespeichert werden, Text muss aber irgendwie codiert werden.
  • Zudem kann man mit Zahlen rechnen, mit Text aber nicht!

Die Pizza ist also der Datentyp. Eine Pizza können wir in einer Pizzaschachtel speichern und die Schachtel beschriften – das wäre unsere Variable mit ihrem Namen. Als Wert für Pizzas sind alle möglichen Pizza-Belegungen von Margarita bis Quattro Stagioni denkbar.

in Python ​

Die wichtigsten einfachen Datentypen von Python sind:

ArtDatentypBeschreibungBeispiele
WahrheitswertboolWahr oder Falsch
Boolean
True
False
Zahlinteine Ganze Zahl
Integer
17
-3
floateine Kommazahl
Float
1.84
-1234.0
Textstreine Folge von Zeichen
String
"Hello World"

Datentypen Abfragen ​

In Python kann man den Datentyp einer Variablen resp. eines Wertes mit dem Befehl type abfragen:

python
type(True)
type(17)
type(1.84)
type("Hello World")
python
print(type(True))
print(type(17))
print(type(1.84))
print(type("Hello World"))

Werte konvertieren ​

Jeder einfache Datentyp von Python hat einen Konvertierungs-Befehl, der versucht das mitgelieferte Argument umzuwandeln. Diese Befehle heissen genau gleich wie der Datentyp in welchen umgewandelt werden soll:

python
text = "17"
a = int(text)
print(a)
python
text = "2.19"
x = float(text)
print(x)
python
x = 2.712
text = str(x)
print(text)
python
a = 0
wert = bool(a)
print(wert)

Häufig verwendet man solche Befehle, wenn man Zahlen als Text ausgibt, oder wenn man Zahlenwerte in der Shell einliest.

Zahlen einlesen ​

Mit dem input-Befehl können wir Eingaben vom Benutzer entgegennehmen:

python
x = input("bitte gib eine Zahl ein: ")
print(x, "ist vom Typ", type(x))

Standardmässig liefert der input-Befehl immer Text – also einen Wert vom Datentyp str – zurück. Falls wir eine Zahl haben möchten, müssen wir die Eingabe explizit umwandeln:

python
eingabe = input("bitte gib eine Zahl ein: ")
i = int(eingabe)
print(i, "ist vom Typ", type(i))
python
eingabe = input("bitte gib eine Zahl ein: ")
x = float(eingabe)
print(x, "ist vom Typ", type(x))

Aufgabe

Teste die obenstehenden Beispiele für die Eingabe von Zahlen:

  • Was geschieht wenn du Text eingibst?
  • Was geschieht wenn du bei der Umwandlung in Ganze Zahlen (int) eine Kommazahl eingibst?
  • Was geschieht wenn du bei der Umwandlung in Kommazahlen (float) eine Ganze Zahl eingibst?

Auch kann man Zahlen wieder in Text umwandeln:

python
x = 17
text = str(17)
print(text, "ist vom Typ", type(text))

oder Zahlen und Text in Wahrheitswerte:

python
v = bool(17)
print(v, "ist vom Typ", type(v))

w = bool("Hello World")
print(w, "ist vom Typ", type(w))

Zusatzaufgabe

Für welche Werte von str, float und int ergibt die Umwandlung mit bool in einen Wahrheitswert den Wert False?


Illustrationen: Designed by vectorpocket / Freepik

Gymnasium Kirchenfeld, fts