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

为什么在类里面定义 gcd()函数会出错?

如题,在类里面定义gcd()时,会报错:https://img1.sycdn.imooc.com//5c4a823f0001632d07810627.jpg

https://img1.sycdn.imooc.com//5c4a82230001c39403880152.jpg

正在回答

2 回答

错误原因:全局变量gcd未定义。因为你的gcd函数定义在了Rational这个类内部,成为了一个实例方法,但在__str__这个方法中,您并未按照实例方法来引用,等号右边应该是self.gcd,因为这是一个内部方法了。如果在类外面定义gcd函数,等号右面就可以直接用gcd了。

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

少了.   self._gcd

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

举报

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

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

进入课程

为什么在类里面定义 gcd()函数会出错?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信