Wie in den meisten anderen Sprachen gehören zu den häufig verwendeten Operatoren in Python auch arithmetische Operatoren, Vergleichsoperatoren und logische Operatoren. Es gibt jedoch einige Unterschiede, die im Folgenden ausführlich vorgestellt werden.
1. Arithmetische Operatoren
Wie die meisten anderen Sprachen gibt es auch in Python + ( Es gibt fünf Operatoren: Addition), - (Subtraktion), * (Multiplikation), / (Division) und % (Rest). Darüber hinaus gibt es zwei spezielle Operatoren, nämlich // (Division) und ** (Potenzoperator oder Potenzierung). Operator).
Hier sind die Funktionen von +, -, * die gleichen wie die des Taschenrechners, daher werden sie nicht noch einmal beschrieben. Der Operator
% gilt auch für Gleitkommazahlen, zum Beispiel:
>>> 3.75 % 0.5 0.25 >>> 3.75 % 2 1.75 >>>
** Der Operator führt Potenzoperationen (Potenzierungsoperationen) durch, zum Beispiel:
>>> 3**2 9 >>> 2**3 8 >>>
Beachten Sie das Es handelt sich um die Prioritätsbeziehung zwischen dem **-Operator und dem Zeichen (+, -). ** hat eine höhere Priorität als das Zeichen auf seiner linken Seite und eine niedrigere Priorität als das Zeichen auf seiner rechten Seite. Oder Sie können einfach denken, dass der **-Operator eine höhere Priorität hat als die Plus- und Minuszeichen, denn wenn sich die Plus- und Minuszeichen auf der rechten Seite befinden, sind die beiden Symbole zusammen und die Plus- und Minuszeichen können nicht sein ENTFERNT. Zum Beispiel:
>>> -3**2 -9 >>> 3**-2 0.1111111111111111 >>>
Was hervorgehoben und unterschieden werden muss, sind die beiden Divisionsoperatoren / und //. In Python 2.7 ist / eine ganzzahlige Division für die Division zweier Ganzzahlen. Das Berechnungsergebnis lässt nur den ganzzahligen Teil übrig und der Dezimalteil ist weg. Zum Beispiel:
>>> 3/2 1 >>>
Wenn Sie möchten Um das Normale auszuführen Die Division, also den Dezimalteil des Berechnungsergebnisses beizubehalten, kann mit Gleitkommazahlen betrieben werden, zum Beispiel:
>>> 3.0/2 1.5 >>> 3/2.0 1.5 >>> 3/2. 1.5 >>> 3.0/2.0 1.5 >>>
In Python 3 hat sich / geändert, ob Es handelt sich um eine Ganzzahldivision oder eine Gleitkommadivision. Alle Gleitkommadivisionen werden durchgeführt, dh der Dezimalteil des Berechnungsergebnisses kann beibehalten werden.
Gleichzeitig besteht eine andere Möglichkeit, den Dezimalteil des Berechnungsergebnisses in Python 2 beizubehalten, darin, vor dem Programm einen Satz aus der Importdivision __feture__ einzufügen und die Anweisung auszuführen (__ in der Anweisung). zwei Unterstriche), zum Beispiel:
>>> from __future__ import division >>> 3/2 1.5 >>> 5/4 1.25 >>>
Die Divisionsoperation stimmt zu diesem Zeitpunkt bereits mit der Divisionsoperation in Python 3 überein.
In Python wird dieser ganzzahlige Divisionsoperator ebenfalls bereitgestellt. Er führt auch eine ganzzahlige Division für Gleitkommazahlen durch. Zum Beispiel:
>>> 3//2 1 >>> 3.0//2.0 1.0 >>> 5//2.0 2.0 >>>
2 . Vergleichsoperatoren
Wie die meisten anderen Sprachen umfassen die Vergleichsoperatoren von Python <, <=, >, >=, ==, !=. Vergleichsoperatoren geben einen booleschen Wert von „True“ oder „False“ zurück, je nachdem, ob der Wert des Ausdrucks „true“ oder „false“ ist. Zum Beispiel:
>>> 3 < 4 True >>> 3 > 4 False >>> 3 == 4 False >>> 3 != 4 True >>>
3. Logische Operatoren
Logische Operatoren werden in Python oft als AND, OR und NOT bezeichnet und, oder, nicht.
Verwenden Sie logische Operatoren, um beliebige Ausdrücke miteinander zu verbinden und einen booleschen Wert zu erhalten. Zum Beispiel:
>>> 3 < 4 and 3 > 4 False >>> 3 < 4 or 3 == 4 True >>> not 3 < 4 False >>>
Bei der Verwendung logischer Operatoren ist vor allem Kurzschlusslogik (oder verzögerte Auswertung) zu beachten, was bedeutet: Logische Operationen erfolgen von links nach rechts erfolgt rechts, wurde das Ergebnis links ermittelt, erfolgt rechts keine Berechnung mehr. Der spezifische Ausdruck lautet wie folgt:
Wenn x und y falsch sind, wird der Wert von x sofort zurückgegeben, ohne dass y ausgeführt wird. Wenn x wahr ist, lautet der Wert von y zurückgegeben
Wenn x oder y wahr ist, wird der Wert von x sofort zurückgegeben, ohne dass y ausgeführt wird; wenn x falsch ist, wird der Wert von y zurückgegeben
Zum Beispiel:
>>> a Traceback (most recent call last): File "<pyshell#21>", line 1, in <module> a NameError: name 'a' is not defined >>> 0 and a 0 >>> 0 or a Traceback (most recent call last): File "<pyshell#23>", line 1, in <module> 0 or a NameError: name 'a' is not defined >>> 6 and a Traceback (most recent call last): File "<pyshell#24>", line 1, in <module> 6 and a NameError: name 'a' is not defined >>> 6 or a 6 >>>
Da wir die Variable a nicht im Voraus definiert haben, wird beim Ausführen von a ein Fehler gemeldet.
Für 0 und a kann zu diesem Zeitpunkt festgestellt werden, dass 0 zuerst als falsch beurteilt wird (im Allgemeinen stellt 0 in Programmiersprachen „falsch“ dar, und nicht 0 bedeutet „wahr“) Das gesamte Ergebnis ist falsch, daher wird direkt 0 zurückgegeben, ohne dass a ausgeführt wird, sodass kein Fehler gemeldet wird.
Für 0 oder a wird zunächst 0 als falsch beurteilt. Zu diesem Zeitpunkt kann nicht festgestellt werden, ob das gesamte Ergebnis wahr oder falsch ist, daher wird weiterhin a ausgeführt, also ein Fehler wird gemeldet.
Bestimmen Sie für 6 und a zunächst, ob 6 wahr ist. Zu diesem Zeitpunkt kann nicht festgestellt werden, ob das gesamte Ergebnis wahr oder falsch ist, sodass a weiterhin ausgeführt wird Fehler wird gemeldet.
Für 6 oder, da 6 zuerst als wahr beurteilt wird, kann bereits festgestellt werden, dass das gesamte Ergebnis wahr ist, sodass 6 direkt zurückgegeben wird, ohne dass a ausgeführt wird, also kein Fehler wird gemeldet.
Zusammenfassung: Priorität der Operatoren
Fassen wir die Priorität der Operatoren zusammen, siehe unten Bild:
Empfohlenes Lernen: Python-Video-Tutorial
Das obige ist der detaillierte Inhalt vonWas sind die am häufigsten verwendeten Operatoren in Python?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!