第一个错误由于if判断顺序不对区间没有闭合
第二个错误是由于没有指定正确的分数范围
class Student(object): def __init__(self, name, score): self.name = name self.score = score def get_grade(self): if self.score not in range(101): raise ValueError if self.score >= 80: return 'A' if self.score >= 60: return 'B' return 'C'
逻辑上来讲,并没规定分数一定是0-100,所以我理解101大于80,应返回A,而-1应该返回C才对啊。这里我打印了实例入参数据后,发现部分数值左侧被加上了小数点。
没有明白到底是什么错误导致的
仔细看最后一个测试的assert,要求就是要让入参的分数不在0-100时报数值错误,所以等于是规定了入参必须是0-100以内
Sign in to make a reply
alienation
第一个错误由于if判断顺序不对区间没有闭合
第二个错误是由于没有指定正确的分数范围