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

为什么python3运行参考答案代码会报错

class Person(object):


    def __init__(self, name, score):

        self.name = name 

        self.__score = score


    def get_grade(self,score):

        if self.__score >= 80:

            return 'A'

        elif self.__score >= 60:

            return 'B'

        else:

            return 'C'

                


p1 = Person('Bob', 90)

p2 = Person('Alice', 65)

p3 = Person('Tim', 48)


print p1.get_grade()

print p2.get_grade()

print p3.get_grade()


TypeError: get_grade() missing 1 required positional argument: 'score'

正在回答

2 回答

你这代码不仅仅是python3报错,python2也报错。

def get_grade(self,score):

这里有1个score参数,但是你调用的时候却没有传入,肯定报错了

实际上这里根本就不需要score参数,一个self就可以了

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

get_grade()需要传入参数score,你的函数定义要求参数,还有个错误,print 要加()

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

举报

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

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

进入课程

为什么python3运行参考答案代码会报错

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

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

帮助反馈 APP下载

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

公众号

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