楼主,这是新版课后作业006讲,动动手1题。这是标准答案:
- score = input("请输入你的分数:")
- while score != 'e':
- score = int(score)
- if score < 60:
- print("D")
- if 60 <= score < 80:
- print("C")
- if 80 <= score < 90:
- print("B")
- if 90 <= score < 100:
- print("A")
- if score == 100:
- print("S")
- score = input("请输入你的分数:")
复制代码
如果去掉最后一句话。那么,代码就变成了:
- score = input("请输入你的分数:")
- while score != 'e':
- score = int(score)
- if score < 60:
- print("D")
- if 60 <= score < 80:
- print("C")
- if 80 <= score < 90:
- print("B")
- if 90 <= score < 100:
- print("A")
- if score == 100:
- print("S")
复制代码
为什么会不断打印等级字母,因为,这是恒成立,恒为真,
这个代码的判断条件while score != 'e': 是恒成立的,因为我们根本就不会输入'e',所以恒成立,那么就会
一直循环,一直判断,一直执行,也就是一直判断并打印你之前输入的数值的等级。
然后,你把之前删除的语句补回之后,就恢复了。
因为,input 函数的作用就是 等待用户输入,并且将用户输入的结果转化位字符串
所以在这里,你补上之后就会停下运行,它会等你重新输入一个数值,再重新判断,执行
每判断一次,打印一个等级,就会停下,要等你输入一个新的数值才会再次运行,这就是input() 作用。