本帖最后由 qq1151985918 于 2021-1-2 09:51 编辑
楼主,你要理解这一点,while循环是有循环条件的,这个循环条件就是当 分数score只要不等于'e'(选择是e而不是其他字母很大可能是因为e是exit的首字母,不过这不影响),循环体就会执行循环代码,就会只执行while循环体之内的代码,外面的代码就不搭嘎了,所以当代码循环一遍之后,在循环体最后再次让用户输入score既是把循环的控制权教导用户手里,也是让用户选择是否要进行新的循环判断成绩,所以score既是输入的变量,用来查询成绩结果,又是控制循环的开关,随时可以退出。如果我们不想用score退出那么循环体就成了死循环,一直运行下去,直至崩溃,或者我们加入break代码来加以控制
下面回答下楼主问的 怎样在循环内用 break 来控制循环结束
- while True:#我们直接把循环定义为死循环,在循环内用 break 来结束循环
- score = input("请输入你的分数(输入 e 退出):")
- if score == "e":
- break #如果输入 e 退出循环
- try: #这里是原来代码没有的,加了个报错,用户是个毛孩子可能乱操作
- score = float(score) #这里我把分数换为浮点型,因为实际中会存在比如90.5这种分数
- except:
- print("请输入正确分数\n")
- continue # continue 的意思就是结束本次循环立即进入下一次循环
-
- if score < 0 or score > 100:
- print("请输入正确分数\n")
- continue
- 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")
- print("已退出!")
复制代码