Aus der Mathematik kennst du den Begriff der Operationen bereits. Operationen bei Zahlen sind z.B. die Addition, die Subtraktion, die Multiplikation und die Division.
Wenn man programmiert braucht man diese Operationen auch. Es gibt aber noch mehr!
Genau genommen gibt es für jeden Datentyp (also auch für Zeichenketten) genau definierte Operationen.
In diesem Kapitel lernst du die Operationen für Zahlen und Zeichenketten kennen und anwenden.
Du lernst auch, wie du aus einer Zeichenkette eine Zahl machen kannst und umgekehrt, wie du eine Zahl in eine Zeichenkette umwandeln kannst.
Ausserdem wirst du viele nützliche und interessante kleine Programme schreiben!
Inhalt:
Operationen mit Zahlen
Operationen mit Zeichenketten
Datentypumwandlung
Du kannst die üblichen mathematischen Operatoren verwenden. Sie werden aber z.T. anders geschrieben als von Hand:
| + | Addition |
| - | Subtraktion |
| * | Multipliktion |
| / | Division |
Das Resultat der Operation kann entweder mit einer Zuweisung in eine Variable gespeichert werden oder direkt ausgegeben werden.
Du kannst auch mehrere Operatoren in einer Reihe notieren. Es gilt dann die übliche Punkt-vor-Strich-Regel. Du kannst auch Klammern setzen.
Wahrscheinlich kennst du die Modulo-Division nicht. Bei der Modulo-Division werden zwei Werte dividiert; das Ergebnis ist aber der Restwert der Division.
Dafür wird das Zeichen % verwendet - hat aber nichts mit Prozent zu tun!
Es gibt nützliche Abkürzungen für häufig verwendete Operationen. Oft kommt es vor, dass man eine Zahl um 1 erhöhen muss. Du kannst das so schreiben:
Das selbe funktioniert auch mit der Verkleinerung um 1:
Weitere nützliche Abkürzungen sind:
Für Zeichenketten gibt es nur eine Operation. Die Zeichenkettenverknüpfung. Dabei können zwei Zeichenketten mit dem +-Operator zusammengehängt werden.
Das Problem von input() und von prompt() ist, dass sie eingegebene Zahlen als Zeichenketten zurückgeben.
Folgender Code führt deshalb zu einem Fehler:
Man muss die Zeichenkette zuerst in eine Zahl umwandeln.
Das obige Beispiel muss also so abgewandelt werden:
Auch umgekehrt kann es zu Problemen kommen. Deshalb kann man mit der Funktion String() Zahlen in Zeichenketten umwandeln: