您的代码存在很多问题,但这里有一些大问题。
首先,elseinwhile...else并不意味着你认为它做了什么。这不像在if...else. 在中,如果您的语句变为-- 请注意,如果您退出循环或出现错误,则执行while...else该else块。在您的代码中,该块将在何时执行,因为这与您的布尔表达式相反。whileFalsebreakelsexvalue < Limitwhile
其次,因为else块是在循环之后continue执行的,所以放在那里没有任何意义,因为不再有任何循环可以迭代。不仅如此,即使有一个continue循环继续,你之前卡住的事实xvalue = int(input...意味着循环将在用户有机会输入更新的值之前重新启动。 您需要在重新分配continue 之后放置,到那时,根本没有必要放置continue。
所以基本上,你要找的是:
xvalue = int(input("Enter a test value to see if it works: "))
while xvalue >= Limit:
print ("\a\a\a")
xvalue = int(input("Please try another value: "))
OP评论后更新:
xvalue = int(input("Enter a test value to see if it works: "))
while xvalue < Limit: # Repeats until user gives a value above limit
xvalue = int(input("Please try another value: "))
else:
while True: # Causes bell to ring infinitely
print ("\a\a\a")