Error when trying to overload an operator "/"

In Python 3.x, you need to overload the __floordiv__ and __truediv__ operators, not the __div__ operator. The former corresponds to the // operation (returns an integer) and the latter to / (returns a float).


In Python 3, the division operators are called __truediv__ and __floordiv__. See the Data model documentation for more information.