ICT Ezy wrote: >>>> 2 ** 3 ** 2 > Answer is 512 > Why not 64? > Order is right-left or left-right?
** is a special case: """ The power operator ** binds less tightly than an arithmetic or bitwise unary operator on its right, that is, 2**-1 is 0.5. """ https://docs.python.org/3.5/reference/expressions.html#id21 Here's a little demo: $ cat arithdemo.py class A: def __init__(self, value): self.value = str(value) def __add__(self, other): return self._op(other, "+") def __pow__(self, other): return self._op(other, "**") def __repr__(self): return self.value def _op(self, other, op): return A("({} {} {})".format(self.value, op, other.value)) $ python3 -i arithdemo.py >>> A(1) + A(2) + A(3) ((1 + 2) + 3) >>> A(1) ** A(2) ** A(3) (1 ** (2 ** 3)) -- https://mail.python.org/mailman/listinfo/python-list