目标
让学生熟悉: - 在循环中使用break语句; - 反映计算机代码中的现实情况。
方案
break语句用于退出/终止循环。 使用while循环,设计一个程序,不断要求用户输入一个秘密词(例如,“你陷入无限循环!输入一个秘密词离开循环:”)除非用户输入“chupacabra”作为秘密退出单词,在这种情况下,应该将“你已成功离开循环”的消息打印到屏幕上,循环应该终止。 不要打印用户输入的任何单词。使用条件执行的概念和break语句。
'''
Lab 2.2.22.1 - While loops with 'break' keyword use.
'''
secret_word = str(input("You're stuck in an infinite loop!\nEnter a secret word to leave the loop."))
while secret_word != "chupacabra":
print("You're stuck in an infinite loop!\nEnter a secret word to leave the loop.")
if secret_word == "chupacabra":
print("You've successfully left the loop.")
'''
just keeps printing out both lines continuosly - in a loop.
'''
问题
当我运行此程序时,它会打印前两行并等待输入。如果输入与var匹配,则它不显示“left the loop”字符串,它什么也不做。如果我输入除了正确的密码之外的任何东西,它只会继续以永无止境的循环打印前两行。
我坚持如何使用while循环。我只想做两件事,如果输入不等于var则打印A,如果输入与var匹配则打印B.但是我读到的有关while循环的所有内容都是为了做一些事情,然后是if或elif,或者让别人做其他事情。
我正在努力解决这个问题,因为我不知道怎么写这个循环,所以虽然没有做任何事情,但这有意义吗?
我正在做一个python课程,所以请耐心等待。这不是任何考试或评分工作的一部分,但我宁愿先了解我做错了什么。
答案 0 :(得分:1)
您需要在循环中读取secret_word
,并在匹配时使用break退出:
secret_word = ""
while True:
secret_word = input("You're stuck in an infinite loop!\nEnter a secret word to leave the loop.")
if secret_word == "chupacabra":
print("You've successfully left the loop.")
break