首先,python查看
x
和
y
决定是否打电话
x.__add__
或
y.__radd__
.因为他们都是同一类型的
Commuter1
,它尝试
加上__
第一。
然后,在你的内心
__add__
方法,执行以下操作:
return self.val + other
所以,python查看
self.val
和
other
决定是否打电话
self.val.__add__
或
other.__radd__
.因为他们是不相关的类型
int
和
通勤1
,它尝试
int.__add__
第一。
但是
内加__
回报
NotImplemented
对于它不知道的类型,python会返回到调用
其他。__
.
在你的内心
__radd__
方法,执行以下操作:
return other + self.val
所以,python查看
其他
和
自我价值
决定是否打电话
other.__add__
或
self.val.__radd__
是的。因为他们都是同一类型的
内景
,它尝试
_添加__
第一。
当然还有
内加__
在另一个上面工作
内景
,因此它返回内部
+
在你的内心
_拉德__
,它返回
+
里面
_添加__
,它返回一个顶级的值
+
,您可以打印。