Skip to content

Datentypen

ProgrammierenVariablen & 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