嗨,我想知道是否有办法在 Python 中进行对称运算符覆盖。例如,假设我有一堂课:
class A:
def __init__(self, value):
self.value = value
def __add__(self, other):
if isinstance(other, self.__class__):
return self.value + other.value
else:
return self.value + other
然后我可以这样做:
a = A(1)
a + 1
但如果我尝试:
1 + a
我得到一个错误。有没有办法覆盖运算符add以便 1 + a 起作用?