Python面向对象问题,这几行代码什么意思,为什么会输出10,看不懂,求大神解释

2025-01-15 09:18:57
推荐回答(1个)
回答1:

__init__是初始化构造函数,初始化对象的时候会调用它,这样Number(20)就会将对象的属性data赋值为20.
__sub__是重载运算符,它将–减号进行重载,这样对象就可以进行相减运算了,根据重载规则,将属性data–10得到的结果就是我们想要的,注意的是,对象相减结果还是对象,最后调用对象的属性y.data得到我们计算的结果10