为了账号安全,请及时绑定邮箱和手机立即绑定

大家帮忙解释下

def __add__(self, r):
       return Rational(self.p * r.q + self.q * r.p, self.q * r.q)

正在回答

2 回答

分步理解

1、将 __add__(self, r)  理解为 add(r1, r2)

2、Rational(p,q)是无理数函数结果就是:p/q

3、Rational(self.p * r.q + self.q * r.p, self.q * r.q) 就相当于:(r1.p * r2.q + r1.q * r2.p)/ r1.q * r2.q

0 回复 有任何疑惑可以回复我~

这个题目是求有理数的加法,请你先百度一下什么是有理数,然后再往下看比较好。

本题有很多预设没有说清楚。

1.先创建两个Rational对象,每个对象有两个参数,第一个参数是分子,第二个参数是分母。

2.__add__方法需要传进来两个对象,第一个对象self和第二个对象r

3.self.p是第一个对象的第一个参数(也就是分子),self.q是第一个对象的第二个参数(也就是分母),以此类推r

4.self.p * r.q + self.q * r.p  ,  self.q * r.q 说的就是就是分数,先通分再相加“,”前面是分子后面是分母

5.最后再显示输出成分数形式 分子 / 分母

请根据这些提示再仔细读一遍程序,希望可以帮到你。

2 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
python进阶
  • 参与学习       255533    人
  • 解答问题       3038    个

学习函数式、模块和面向对象编程,掌握Python高级程序设计

进入课程

大家帮忙解释下

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号