Wie man in Python 3 mit Operatoren rechnet

Einführung

Zahlen sind in der Programmierung sehr verbreitet. Sie werden verwendet, um beispielsweise Bildschirmgrößen, geografische Standorte, Geld und Punkte, die in einem Video verstrichene Zeit, Positionen von Spielavataren und Farben durch Zuweisen numerischer Codes darzustellen.

Die Fähigkeit, mathematische Operationen in der Programmierung effektiv ausführen zu können, ist eine wichtige Fähigkeit, die Sie entwickeln müssen, da Sie häufig mit Zahlen arbeiten. Ein höheres Verständnis der Mathematik kann Ihnen sicherlich dabei helfen, ein besserer Programmierer zu werden, ist jedoch keine Voraussetzung. Wenn Sie keinen mathematischen Hintergrund haben, stellen Sie sich Mathematik als Werkzeug vor, um das zu erreichen, was Sie erreichen möchten, und um Ihr logisches Denken zu verbessern.

Wir arbeiten mit zwei der am häufigsten verwendeten numerischen Datentypen von Python, * Ganzzahlen * und * Gleitkommazahlen *:

  • Integers sind ganze Zahlen, die positiv, negativ oder 0 (…, + -1 +) sein können `, + 0 + , + 1 + `,…).

  • Floats sind reelle Zahlen, sie enthalten einen Dezimalpunkt (wie in +9.0+) `oder + -2,25 + `).

In diesem Lernprogramm werden Operatoren beschrieben, die mit Zahlen-Datentypen in Python verwendet werden können.

Betreiber

Ein * Operator * ist ein Symbol oder eine Funktion, die eine Operation anzeigt. In Mathematik ist beispielsweise das Pluszeichen oder + der Operator, der die Addition angibt.

In Python werden wir einige bekannte Operatoren sehen, die aus der Mathematik übernommen wurden, aber andere Operatoren, die wir verwenden werden, sind spezifisch für die Computerprogrammierung.

Hier ist eine kurze Referenztabelle mit mathematischen Operatoren in Python. In diesem Lernprogramm werden alle folgenden Vorgänge behandelt.

Operation What it returns

x + y

Sum of x and y

x - y

Difference of x and y

-x

Changed sign of x

+x

Identity of x

x * y

Product of x and y

x / y

Quotient of x and y

x // y

Quotient from floor division of x and y

x % y

Remainder of x / y

x ** y

x to the y power

Wir werden auch compound assignations operator behandeln, einschließlich + + = + `und + * = + , die einen arithmetischen Operator mit dem Operator + = + `kombinieren.

Addition und Subtraktion

In Python verhalten sich Additions- und Subtraktionsoperatoren genauso wie in der Mathematik. Tatsächlich können Sie die Programmiersprache Python als Taschenrechner verwenden.

Schauen wir uns einige Beispiele an, beginnend mit ganzen Zahlen:

print(1 + 5)
Output 6

Anstatt Ganzzahlen direkt in die Anweisung "+ print +" zu übergeben, können wir Variablen so initialisieren, dass sie für ganzzahlige Werte stehen:

a = 88
b = 103

print(a + b)
Output191

Da ganze Zahlen sowohl positive als auch negative Zahlen sein können (und auch 0), können wir eine negative Zahl mit einer positiven Zahl hinzufügen:

c = -36
d = 25

print(c + d)
Output-11

Die Addition verhält sich bei Floats ähnlich:

e = 5.5
f = 2.5

print(e + f)
Output8.0

Da wir zwei Floats zusammenaddiert haben, hat Python einen Float-Wert mit einer Dezimalstelle zurückgegeben.

Die Syntax für die Subtraktion ist dieselbe wie für die Addition, außer dass Sie Ihren Operator vom Pluszeichen ("+") zum Minuszeichen ("+ - +") ändern:

g = 75.67
h = 32

print(g - h)
Output43.67

Hier haben wir eine ganze Zahl von einem Float subtrahiert. Python gibt ein Float zurück, wenn mindestens eine der in einer Gleichung enthaltenen Zahlen ein Float ist.

Unäre Rechenoperationen

Ein unärer mathematischer Ausdruck besteht nur aus einer Komponente oder einem Element. In Python können die Plus- und Minuszeichen als ein einzelnes Element zusammen mit einem Wert verwendet werden, um die Identität des Werts zurückzugeben (+) oder das Vorzeichen des zu ändern value (+ - +).

Das Pluszeichen gibt die Identität des Werts an, obwohl es nicht häufig verwendet wird. Wir können das Pluszeichen mit positiven Werten verwenden:

i = 3.3
print(+i)
Output3.3

Wenn wir das Pluszeichen mit einem negativen Wert verwenden, wird auch die Identität dieses Werts zurückgegeben, und in diesem Fall wäre es ein negativer Wert:

j = -19
print(+j)
Output-19

Bei einem negativen Wert gibt das Pluszeichen den gleichen negativen Wert zurück.

Das Minuszeichen ändert alternativ das Vorzeichen eines Werts. Wenn wir also einen positiven Wert übergeben, wird das Minuszeichen vor dem Wert einen negativen Wert zurückgeben:

i = 3.3
print(-i)
Output-3.3

Wenn wir alternativ den unären Operator mit Minuszeichen und negativem Wert verwenden, wird ein positiver Wert zurückgegeben:

j = -19
print(-j)
Output19

Die unären arithmetischen Operationen, die durch das Plus- und das Minuszeichen angezeigt werden, geben entweder die Identität des Werts im Fall von "+ i +" oder das entgegengesetzte Vorzeichen des Werts wie in " -i +" zurück.

Multiplikation und Division

Wie Addition und Subtraktion werden Multiplikation und Division sehr ähnlich aussehen wie in der Mathematik. Das Zeichen, das wir in Python für die Multiplikation verwenden, ist "+ * " und das Zeichen, das wir für die Division verwenden, ist " / +".

Hier ist ein Beispiel für die Multiplikation in Python mit zwei Float-Werten:

k = 100.1
l = 10.1

print(k * l)
Output1011.0099999999999

Wenn Sie in Python 3 dividieren, wird Ihr Quotient immer als Float zurückgegeben, auch wenn Sie zwei Ganzzahlen verwenden:

m = 80
n = 5

print(m / n)
Output16.0

Dies ist eine der major changes between Python 2 and Python 3 . Der Ansatz von Python 3 bietet eine gebrochene Antwort, sodass bei Verwendung von "+ / " zum Teilen von " 11 " durch " 2 " der Quotient von " 5,5 " zurückgegeben wird. In Python 2 ist der für den Ausdruck "+11 / 2 +" zurückgegebene Quotient " 5 +".

Der "+ / " - Operator von Python 2 führt eine * Flurteilung * durch, wobei für den Quotienten " x " die zurückgegebene Zahl die größte Ganzzahl ist, die kleiner oder gleich " x " ist. Wenn Sie das obige Beispiel für " print (80/5) " mit Python 2 anstelle von Python 3 ausführen, erhalten Sie " 16 +" als Ausgabe ohne Dezimalstelle.

In Python 3 können Sie "+ // " verwenden, um eine Unterteilung durchzuführen. Der Ausdruck `+100 // 40 +` gibt den Wert von ` 2 +` zurück. Die Unterteilung ist nützlich, wenn Sie einen Quotienten in ganzen Zahlen benötigen.

Modulo

Der Operator "+% +" ist das Modulo, das den Rest und nicht den Quotienten nach der Division zurückgibt. Dies ist nützlich, um beispielsweise Zahlen zu finden, die ein Vielfaches derselben Zahl sind.

Schauen wir uns das Modulo in Aktion an:

o = 85
p = 15

print(o % p)
Output10

Um dies aufzuschlüsseln, gibt 85 geteilt durch 15 den Quotienten von 5 mit einem Rest von 10 zurück. Der Wert "+ 10 +" wird hier zurückgegeben, da der Modulo-Operator den Rest eines Divisionsausdrucks zurückgibt.

Wenn wir mit dem Modulo zwei Floats verwenden, wird für den Rest ein Float-Wert zurückgegeben:

q = 36.0
r = 6.0

print(o % p)
Output0.0

Im Fall von 36.0 geteilt durch 6.0 gibt es keinen Rest, daher wird der Wert von + 0.0 + zurückgegeben.

Leistung

Der Operator "+ " in Python wird verwendet, um die Zahl auf der linken Seite zur Potenz des Exponenten auf der rechten Seite zu erhöhen. Das heißt, in dem Ausdruck "+5 ** 3 +" wird 5 zur 3. Potenz erhöht. In der Mathematik sehen wir diesen Ausdruck oft als 5³ gerendert, und was wirklich vor sich geht, ist, dass 5 dreimal mit sich selbst multipliziert wird. In Python erhalten wir das gleiche Ergebnis von " 125 +", indem wir entweder "+5 3 +" oder "+5 * 5 * 5 +" ausführen.

Schauen wir uns ein Beispiel mit Variablen an:

s = 52.25
t = 7

print(s ** t)
1063173305051.292

Das Erhöhen des Gleitkommas + 52.25 + auf die Potenz von + 7 + durch den Operator + ** + führt zu einem großen zurückgegebenen Gleitkommawert.

Operator-Vorrang

In Python müssen wir wie in der Mathematik berücksichtigen, dass Operatoren in der Rangfolge bewertet werden, nicht von links nach rechts oder von rechts nach links.

Betrachten wir den folgenden Ausdruck:

u = 10 + 10 * 5

Wir können es von links nach rechts lesen, aber denken Sie daran, dass die Multiplikation zuerst durchgeführt wird. Wenn wir also "+ print (u) +" aufrufen, erhalten wir den folgenden Wert:

Output60

Dies liegt daran, dass "10 * 5 +" zu " 50 " ausgewertet wird und wir dann " 10 " addieren, um " 60 +" als Endergebnis zurückzugeben.

Wenn wir stattdessen den Wert "+ 10 " zu " 10 " addieren möchten, dann multiplizieren wir diese Summe mit " 5 +".

u = (10 + 10) * 5
print(u)
Output100

Eine Möglichkeit, sich an die Reihenfolge der Operationen zu erinnern, ist das Akronym * PEMDAS *:

Order Letter Stands for

1

P

Parentheses

2

E

Exponent

3

M

Multiplication

4

D

Division

5

A

Addition

6

S

Subtraction

Möglicherweise kennen Sie ein anderes Akronym für die Reihenfolge der Operationen, z. B. * BEDMAS * oder * BODMAS *. Welches Akronym auch immer für Sie am besten geeignet ist, denken Sie daran, wenn Sie in Python mathematische Operationen ausführen, damit die erwarteten Ergebnisse zurückgegeben werden.

Zuweisungsoperatoren

Der am häufigsten verwendete Zuweisungsoperator ist einer, den Sie bereits verwendet haben: das Gleichheitszeichen "+ = ". Der Zuweisungsoperator " = " weist den Wert rechts einer Variablen links zu. Zum Beispiel weist ` v = 23 ` der Variablen ` v ` den Wert der ganzen Zahl ` 23 +` zu.

Beim Programmieren werden häufig zusammengesetzte Zuweisungsoperatoren verwendet, die eine Operation mit dem Wert einer Variablen ausführen und dann den resultierenden neuen Wert dieser Variablen zuweisen. Diese zusammengesetzten Operatoren kombinieren einen arithmetischen Operator mit dem Operator "+ = +". Daher kombinieren wir zum Hinzufügen "+" mit "+ = +", um den zusammengesetzten Operator " = +" zu erhalten. Mal sehen, wie das aussieht:

w = 5
w += 1
print(w)
Output6

Zuerst setzen wir die Variable "+ w " gleich dem Wert von " 5 ", dann verwenden wir den zusammengesetzten Zuweisungsoperator "+ = ", um die rechte Zahl zum Wert der linken Variablen zu addieren und dann die zuzuweisen Ergebnis zu ` w +`.

Verknüpfungszuweisungsoperatoren werden häufig im Fall von * https://www.digitalocean.com/community/tutorials/how-to-construct-for-loops-inpython-3 [for loops] * verwendet Verwenden Sie diese Option, wenn Sie einen Vorgang mehrmals wiederholen möchten:

for x in range (0, 7):
   x *= 2
   print(x)
Output0
2
4
6
8
10
12

Mit der for-Schleife konnten wir den Prozess des Operators "+ * = " automatisieren, der die Variable " w " mit der Zahl " 2 " multiplizierte und dann das Ergebnis in der Variablen " w +" für "zuordnete die nächste Iteration der for-Schleife.

Python verfügt für jeden der in diesem Lernprogramm behandelten arithmetischen Operatoren über einen zusammengesetzten Zuweisungsoperator:

y += 1          # add then assign value

y -= 1          # subtract then assign value

y *= 2          # multiply then assign value

y /= 3          # divide then assign value

y // = 5        # floor divide then assign value

y **= 2         # increase to the power of then assign value

y %= 3          # return remainder then assign value

Verknüpfungszuweisungsoperatoren können nützlich sein, wenn Dinge schrittweise erhöht oder verringert werden müssen oder wenn Sie bestimmte Prozesse in Ihrem Programm automatisieren müssen.

Fazit

In diesem Lernprogramm wurden viele der Operatoren behandelt, die Sie mit den numerischen Datentypen "Integer" und "Float" verwenden werden. Wenn Sie mehr über Zahlen in Python erfahren möchten, können Sie unter https://www.digitalocean.com/community/tutorials/built-in-python-3-functions-for-working-with-numbers[Built- weiterlesen. in Python 3 - Funktionen zum Arbeiten mit Zahlen.

Weitere Informationen zu anderen Datentypen finden Sie unter Datentypen in Python 3 verstehen. Erfahren Sie, wie zum Konvertieren von Datentypen durch Lesen von How To Convert Data Types in Python 3.