我知道我可以通過以下方式在python中執行簡單的操作符重載。Python操作符與多個操作數重載
讓我們說重載'+'運算符。
class A(object):
def __init__(self,value):
self.value = value
def __add__(self,other):
return self.value + other.value
a1 = A(10)
a2 = A(20)
print a1 + a2
但是,當我嘗試做以下這失敗,
a1 = A(10)
a2 = A(20)
a3 = A(30)
print a1 + a2 + a3
由於__add__
只接受2個參數。用n個操作數實現操作符重載的最佳解決方案是什麼?
爲什麼_temporarily_?看起來像我的合適解決方案。 –
暫時可能是一個錯誤的詞,這一點是爲了解決具體操作的問題,但總的來說,如果你不執行所有必需的操作,你會得到奇怪的結果。 –
Thanks.But我想通過給a1 + a2 + a3得到結果,而不是在外部使用value屬性。 –