塑料袋儿 发表于 2017-4-7 16:17:23

python魔法方法的小问题

class Nint(int):
        def __radd__(self,other):
                return super().__sub__(other)

a=Nint(5)
1+a
为什么1+a会调用radd方法,1自己没有add方法吗?

冬雪雪冬 发表于 2017-4-7 16:43:40

1会int和int相加,但它不会int和Nint相加。
a是Nint类的实例化,Nint是继承int的,所以它才会int和Nint相加。
页: [1]
查看完整版本: python魔法方法的小问题