如何在python中更改符号+(键盘上的按钮)来操作自定义def而不是默认添加?
答案 0 :(得分:3)
您可以在班级上实施以下一种或多种方法:
__add__
- 处理(your object) + (some other object)
__radd__
- 当你有(some other object) + (your object)
并且另一个对象不知道如何进行添加时处理这种情况。__iadd__
- 处理(your object) += (some object)
。您不一定需要实现此功能,因为如果您不这样做,Python将调用__add__
。对于其他操作,有相应的“魔法”方法,数学和其他,see here。
答案 1 :(得分:2)
对类的数字操作委派给various methods。只需在您的班级上实施它们即可执行所需的操作。
class MyClass(object):
def __add__(self, other):
...
请注意,当操作数或两个操作数都是现有类型时,您无法更改标准运算符的行为。