今天的实验结果很奇怪,可能是我的菌涂得太多,或者是抗生素失效,总之结果是我意料之外的事。
今天主要对一道Python题进行错误分析吧,
编写一个成绩评级程序,要求用户输入分数,程序返回对应的评级。
分数 < 60,D
60 <= 分数 < 80,C
80 <= 分数 < 90,B
90 <= 分数 < 100,A
分数 == 100,S
让程序可以不断接收输入,直至用户输入小写字母 e 结束程序。
首先是一个多分类判断,肯定会用到if函数,其次涉及到不断接受输入,则需要循环的效果,因为不是在指定范围内循环,所以一般是用while循环,且我做作业时遇到的一个关键点是,e没有加单引号,导致系统认为e没有被定义一直报错,也导致我自己怀疑自己,所以说一点的细节决定成败。
正确的代码如下:
x = input("请输入你的分数")
while x != 'e':
x = int(x)
if x < 60:
print("D")
elif x < 80:
print("C")
elif x < 90:
print("B")
elif x < 100:
print("A")
else:
print("S")
x = input("请输入你的分数")
```
原答案使用的是多个if函数组合,但是此处使用elif函数会更好。