Grundrechenarten: Rechnen mit Zahlen
Wir können in Python wie aus der Grundschule gewohnt ganz einfach rechnen.
Addition und Subtraktion
Für eine Addition machen wir in der Kommandozeile einfach folgende Eingabe:
3 + 3
Als Ergebnis erhalten wir "6".
Die komplette Form wäre eigentlich:
print(3 + 3)
Der Übersichtlichkeit halber wird in diesem Kapitel immer die kurze Form verwendet.
Das klappt natürlich auch mit Minus (dann allerdings kommt ein anderes Ergebnis raus).
3 - 3
Multiplizieren
Irgendwann kam in der Schule noch multiplizieren und teilen im Mathematikunterricht. Auch das können wir mit den gewohnten mathematischen Zeichen bewirken:
3 * 3
Und als Ergebnis erhalten wir "9"
Division
Und wir bereits in der Schule ist ein Teilen durch das "/" möglich aber auch in Python ist ein Teilen durch 0 nicht möglich.
3/3
Ergibt als Ergebnis "1". Versuchen wir durch "0" zu teilen, bekommen wir eine Fehlermeldung!
3/0
Dies führt zu einer Fehlermeldung "Traceback …" mit einer Angabe der Programmzeile („line X“), wo der Fehler aufgetreten ist. Zusätzlich bekommen wir die Fehlerbezeichnung in Englisch. In diesem Fall dann "ZeroDivisionError: … division by zero".
Modulo in Python
Sehr viel später in der Schule ist ein Teilen mit "Rest" angesagt. Mathematiker würden diese mathematische Funktion als Modulo (mod) bezeichnen, die als Ausgabe den Rest bei einer Division ganzer Zahlen als Rückgabe liefert.
Im folgenden Beispiel wird es nachvollziehbar und verständlich. Die Schreibweise von Modulo ist das Prozentzeichen. Wir wollen nun den Rest der Division von 7 und 2 erhalten:
7%2
Als Ergebnis bekommen wir „1“. Die 2 geht 3-mal komplett in die 7 - sprich 2+2+2 ergibt 6 und dann bleibt von der 7 eine 1 übrig.
Wir können auch anstelle des Rests die Anzahl erhalten, wie oft die Zahl in zu teilende Zahl „komplett rein geht“. Bei unserem obigen Beispiel mit
7//2
erhalten wir dann 3. Unsere 2 geht 3-mal in die 7 und der Rest wird ignoriert. Jetzt haben wir auch schon die Schreibweise eingeführt. Hier haben wir einfach 2 x "/".
Diese 2 Funktionen klappen nur mit ganzzahligen Zahlen.
Hoch irgendwas
Was fehlt noch an den typischen Funktionen? Das typische "hoch" – sprich in der netten mathematischen Schreibweise 23. Hier haben wir dann als Schreibweise in Python:
2**3
Gerechnet wird intern "2 * 2 * 2" und als Ergebnis erhalten wir "8". Bei 32 erhalten wir 9.
Quadratwurzel
Wer jetzt noch das Wurzelziehen vermisst. Die Quadratwurzel ist der einfachste Fall. Der läuft über den Kniff mit 0.5
Also als Schreibweise:
9**0.5
Als Ergebnis bekommen wir die „3“. Hier sehen wir auch, dass die Schreibweise in Python immer mit Punkt geschrieben werden – im Deutschen spricht man von Nachkommazahlen! Wir haben also in Python „NachPUNKTzahlen“.
Möchte man nicht nur die Quadratwurzel ziehen, dann wird das Modul „math“ benötigt, dass erst später im Kurs eingeführt wird. Der Vollständigkeit halber einfach hier die Schreibweise:
import math as m
print(m.sqrt(25))
Das so weit zu den Grundrechenarten und der Anwendung in Python.
TIPP: Große Zahlen gut lesbar
Sobald wir im Millionenbereich sind, werden große Zahlen schlecht lesbar. In Python können wir den Unterstrich (_) dafür nutzen, dass die Zahl gut lesbar wird, aber für die Berechnung ist dieser Strich komplett egal. Einfach einmal probieren:
# schlecht lesbar
zahl1 = 1000000
zahl2 = 100000000
print(zahl1 + zahl2)
# gut lesbar
zahl3 = 1_000_000
zahl4 = 100_000_000
print(zahl3 + zahl4)
# beides mal das gleiche Ergebnis!
# 101000000
Es ist und bleibt auch eine Integer-Zahl. Mit der Anweisung type()
können wir den Variablen-Typ anfragen.
zahl3 = 1_000_000
print(type(zahl3))
Als Ergebnis kommt:
<class 'int'>