Variablen und Datentypen

Variablen sind Speicher für Daten. Dabei vergibt man einen Variablennamen und weißt diesem Namen einen Wert zu, um diesen später wiederzuverwenden. Um z.B. Höhe und Breite zu speichern können wir folgende zwei Variablen dazu verwenden:

width = 5
height = 5

Im Anschluss können wir damit rechnen und über die print()-Methode das Ergebnis auszugeben:

print(width * height)

Die Werte, die wir den zwei Variablen “width” und “height” zugewiesen haben, sind beide vom Typ “int” (“Integer”, also Zahlen). Über die type()-Methode können wir in Python herausfinden, welchen Typ unser Wert immer hat. Die wichtigsten Typen sind:

type(5) # "int"
type(5.5) # "float"
type("Hallo") # "str"
type(True) # "bool"

Wir werden weitere Datentypen später kennenlernen. Was wir uns aber merken sollten, ist, dass der Datentyp entscheidend dafür ist, wie Python bei bestimmten Operationen vorgeht. Ein Beispiel:

print(5 + 5)
print("Hallo" + " Demir")

Wir nutzen in beiden Fällen den arithmetischen Operator “plus”. Bei den Zahlen würde das dazu führen, dass die Summe berechnet wird. Die Ausgabe wäre 10. Im Falle der Zeichenketten/Strings führt die Addition dazu, dass die Strings zusammengefügt werden. Die Ausgabe wäre “Hallo Demir”.

Was passiert aber wenn wir einen String und eine Zahl addieren? Sehen wir uns das an:

age = 20
name = "Max"

print("Hello, my name is " + name + " and I am " + age + " years old.")

Dieser Code würde einen Fehler ausgeben: “TypeError: can only concatenate str (not “int”) to str”. Verschiedene Datentypen lassen sich also nicht zusammenführen. Um das zu beheben können wir in Python Datentypen konvertieren. Dazu stehen uns verschiedene Methoden zur Verfügung:

  • str() konvertiert einen Wert in einen String.
  • int() konvertiert einen Wert in eine ganze Zahl.
  • float() konvertiert einen Wert in eine Gleitkommazahl.
  • bool() konvertiert einen Wert in einen Wahrheitswert.

Zurück zu unserem Beispiel können wir das nun wie folgt lösen:

age = 20
name = "Max"

print("Hello, my name is " + str(name) + " and I am " + str(age) + " years old.")

Keine Kommentare möglich.