ChatGPT sagt (ohne Kontext zu Python):
Potenzierung ** → 2**4 = 16
Negation - vor der Potenz → -(16) = -16
Subtraktion - 4 → -16 - 4 = -20
--
Und das sagt der Disassembler von Python:
Code: Alles auswählen
>>> import dis
...
...
... def func(a, b, c):
... return a ** b - c
...
...
... print(dis.dis(func))
...
4 RESUME 0
5 LOAD_FAST_BORROW_LOAD_FAST_BORROW 1 (a, b)
BINARY_OP 8 (**)
LOAD_FAST_BORROW 2 (c)
BINARY_OP 10 (-)
RETURN_VALUE
The power operator ** binds less tightly than an arithmetic or bitwise unary operator on its right, that is, 2**-1 is 0.5.
Ein unärer Operator ist ein Werkzeug in der Mathematik und Informatik, das nur einen einzigen Wert (einen Operanden) benötigt, um eine Veränderung oder Prüfung durchzuführen.
Unäres Plus (+): Behält den Vorzeichenwert bei (z. B. +5 bleibt 5).
Unäres Minus (-): Kehrt das Vorzeichen um (z. B. -5 wird zu -5, aus -(-3) wird 3).
Logisches NOT (not): Dreht einen Wahrheitswert um (not True wird zu False, not False wird zu True).
Bitweises NOT (~): Invertiert alle Bits einer Ganzzahl. Die mathematische Formel hierfür lautet -(x + 1).
Code: Alles auswählen
>>> import dis
...
...
... def func(a, b):
... return a ** -b
...
...
... print(dis.dis(func))
...
4 RESUME 0
5 LOAD_FAST_BORROW_LOAD_FAST_BORROW 1 (a, b)
UNARY_NEGATIVE
BINARY_OP 8 (**)
RETURN_VALUE
sourceserver.info - sourceserver.info/wiki/ - ausgestorbener Support für HL2-Server