覆盖_add_和_radd_时,当我尝试重写_add_和_radd_这样的:错误蟒蛇
class adding():
def __init__(self, a):
self.a=a
def _add_(self,x):
self.a += x
def _radd_(self,x):
self.a += x
我得到一个错误,当我尝试以下方法:
adding(1) + 1
TypeError: unsupported operand type(s) for +: 'adding' and 'int'
有谁知道在哪里我错了?
我想与+ X
编辑更新self.a值:
def _add_(self,x):
return adding(self.a + x)
def _radd_(self,x):
return adding(self.a + x)
抛出了同样的错误。
没有什么神奇的* *约'_add_'。你想'__add__' –
上帝,我忘了其中的一个。非常感谢。 –
你应该评论这个,所以我可以将其标记为已解决。 –