蜗牛payapa 发表于 2023-3-14 22:39:17

Python 课后作业问题,寻求大神的解惑。

为什么不输入最后的# 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")

    score = input("请输入你的分数:")

isdkz 发表于 2023-3-14 22:41:00

这段代码会无限循环,是因为在 while 循环中没有退出条件,只有在输入 'e' 才能退出循环。如果输入其他字符或数字,程序会一直循环下去。

而最后的 score = input("请输入你的分数:") 语句是为了在每次循环结束后,再次让用户输入分数,以便程序可以根据用户输入的分数进行下一次判断。

当用户输入 'e' 时,程序会跳出循环,因为在下一次循环中,score != 'e' 的条件不再满足,所以不会再次执行循环体中的代码。

总的来说,这段代码的作用是:让用户输入分数,然后根据分数的大小输出相应的等级,并让用户继续输入分数,直到用户输入 'e' 为止。

歌者文明清理员 发表于 2023-3-14 22:44:23

isdkz 发表于 2023-3-14 22:41
这段代码会无限循环,是因为在 while 循环中没有退出条件,只有在输入 'e' 才能退出循环。如果输入其他字符 ...

概括:你不让用户重新输入,他就这么一直判断下去,退出不了,因为输入不变,条件一直没满足,所以只能死循环

蜗牛payapa 发表于 2023-3-20 21:17:38

很感谢,大佬的解惑{:7_139:}

match123_xbd 发表于 2023-4-7 17:56:25

{:5_92:}
页: [1]
查看完整版本: Python 课后作业问题,寻求大神的解惑。