Numerische Typen in Python

In diesem Blog-Artikel geht es um numerische Typen, also um Zahlen. In Python existieren hierfür folgende Datentypen:

  • int (signed integers) – Ganzzahlen
  • float – Gleitkommazahlen
  • complex – Komplexe Zahlen

Auf die komplexen Zahlen werde ich hier nicht weiter eingehen. Denn in der Praxis liegt der Schwerpunkt eindeutig auf den Typen int und float.

int

Zum Datentyp int gehören positive oder negative ganze Zahlen:

>>> a = 10
>>> b = 2
>>> a + b
12

Wie das Beispiel zeigt, können arithmetische Operatoren angewendet werden. Interessant ist dabei, dass bei einer Division das Ergebnis vom Typ float ist:

>>> result = a / 2
5.0
>>> type(result)
<class 'float'>

Eine Umwandlung von einem numerischen Datentyp in einen anderen Typ ist folgendermaßen möglich:

>>> float(3)
3.0

float

Auch der Typ float ist nicht sonderlich spektakulär:

>>> a = 4.2
>>> b = 2.8
>>> a + b
7.0

Eine Konvertierung vom Typ float in den Typ int führt dazu, dass die Nachkommastellen einfach entfernt werden. Es findet keine Rundung statt:

>>> x = 14.9
>>> int(x)
14

Für das Runden steht stattdessen die Funktion round() zur Verfügung:

>>> x = 14.9
>>> round(x)
15

Darüber hinaus existieren noch weitere nützliche Funktionen. So kann der Potenzwert mithilfe von pow() ermittelt werden. Soll die vierte Potenz von drei berechnet werden, sähe dies so aus:

>>> pow(3, 4)
81

An die Funktion pow() werden als Argumente die Basis (3) und der Exponent (4) übergeben. Alternativ steht hierfür auch der **-Operator zur verfügung:

>>> 3**4
81

Die Berechnung der Quadratwurzel (square root) erfolgt mit sqrt(). Dafür muss zuvor das Modul math importiert werden:

>>> from math import sqrt
>>> sqrt(4)
2.0

Der natürliche Logarithmus kann mit log() berechnet werden:

>>> from math import log
>>> log(4)
1.3862943611198906

Weitere Funktionen finden sich in der Python-Dokumentation zu mathematischen Funktionen.

Weiterführende Links