chanjh 发表于 2020-5-19 14:58:28

关于python新版教学006讲课后作业

1. 修改上一题的代码,让程序可以不断接收输入,直至用户输入小写字母 e 结束程序。
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("请输入你的分数:")


这里最后一行代码是什么意思呢,不加上的话输入一个数字会无限循环

永恒的蓝色梦想 发表于 2020-5-19 15:00:02

再次接受输入

Twilight6 发表于 2020-5-19 15:01:55

楼上正解
input 函数要等你用户输入数据后才会继续运行

latiao-python 发表于 2020-5-19 15:18:32

不是应该用 if...elif..else 吗

heidern0612 发表于 2020-5-19 15:27:57

加不加都是无限循环,除非你输入e停止。

只不过加了input,让你跟电脑有个交互,没交互的话,电脑就一直运行程序了。

sunrise085 发表于 2020-5-19 15:29:53

题目要求有两个:
让程序可以不断接收输入
直至用户输入小写字母 e 结束程序
第一个要求就是用最后一句完成的,循环中不断的接收输入
第二个要求是由第二行while条件完成的。

另外你的程序使用的是多个if,效率有点低,用if…elif…效率高一些,一旦进入某个if就不再进行后面的判断了,你的程序会一直对着五个if进行判断

score = input("请输入你的分数:")
while score != 'e':
    score = int(score)
    if score < 60:
      print("D")
    elif score < 80:
      print("C")
    elif score < 90:
      print("B")
    elif score < 100:
      print("A")
    elif score == 100:
      print("S")
    score = input("请输入你的分数:")

chanjh 发表于 2020-5-19 16:55:12

sunrise085 发表于 2020-5-19 15:29
题目要求有两个:




非常详细~~~感谢!!!
页: [1]
查看完整版本: 关于python新版教学006讲课后作业