Hi, for the fun I try operator overloading experiences and I didn't exactly understand how it works.
Here is my try: >>> class myint(int): def __pow__(self, value): return self.__add__(value) >>> a = myint(3) >>> a ** 3 6 OK, it works. Now I try different way to achieve the same result but without much luck: >>> class myint(int): pass >>> myint.__pow__ = myint.__add__ or: >>> class myint(int): __pow__ = int.__add__ or: >>> class myint(int): pass >>> a.__pow__ = a.__add__ but for every try the result was the same: >>> a = myint(3) >>> a ** 3 27 Why it doesn't works ? -- http://mail.python.org/mailman/listinfo/python-list