arnodel at gmail.com
Mon Sep 19 13:17:22 CEST 2011
On 19 September 2011 12:11, Henrik Faber <hfaber at invalid.net> wrote:
> Hi there,
> when I have a python class X which overloads an operator, I can use that
> operator to do any operation for example with an integer
> y = X() + 123
> however, say I want the "+" operator to be commutative. Then
> y = 123 + X()
> should have the same result. However, since it does not call __add__ on
> an instance of X, but on the int 123, this fails:
> TypeError: unsupported operand type(s) for +: 'int' and 'X'
> How can I make this commutative?
Overload X.__radd__() as well
More information about the Python-list