Python 运算符重载及其他
我想知道有没有人能给我一个例子,教我怎么在一个类里面重载一个运算符,比如说 + 这个运算符。我能不能定义一个函数(而不是类的方法)来实现这个?我还是个新手,所以不太清楚怎么做。
谢谢
3 个回答
2
如果对基础知识有疑问,就去查手册。
你可以访问这个链接了解更多内容:http://docs.python.org/reference/datamodel.html
3
定义它的 __add__()
方法。
详细信息请查看 这里。
2
在编程中,有时候我们需要处理一些数据,比如从一个地方获取数据,然后在另一个地方使用这些数据。这个过程就像是把水从一个水桶倒到另一个水桶里。我们需要确保水不会洒出来,也就是确保数据在转移过程中不会丢失。
有些时候,我们还需要对这些数据进行一些处理,比如把它们转换成不同的格式,或者进行一些计算。这就像是把水加热变成蒸汽,或者把水变成冰块。我们需要使用一些工具和方法来完成这些操作。
在编程中,常常会用到一些特定的代码来实现这些功能。比如,我们可能会用到循环、条件判断等,这些都是帮助我们更好地管理和处理数据的工具。
总之,编程就像是在做一个复杂的水管工程,我们需要仔细规划,确保每一步都能顺利进行。
class MyNum(object):
def __init__(self, val):
super(MyNum,self).__init__()
self.val = val
def __add__(self, num):
return self.__class__.(self.val + num)
def __str__(self):
return self.__class__.__name__ + '(' + str(self.val) + ')'
print(MyNum(3) + 2) # -> MyNum(5)