我正在制作自动售货机而且我有点卡住了。
代码:http://pastebin.com/5AWG1qWw
在我的机器中我有6个选择,但是当我运行程序时,一切都有效,除非我来vending=input("Select a Option: ")
所以说我输入“1”它会问我同样的问题,而不是去{ {1}}
答案 0 :(得分:2)
每一步都会重复,因为你没有为1到6之间的数字做任何事情,
while error2==True:
try:
vending=input("Select a Option: ")
if vending >= 7:
print"Enter a number between 1-6. Please try again."
elif vending==0:
print"Enter a number between 1-6. Please try again."
error2=False
else:
#do something
# Set error2 to False to break out of the while loop.
except NameError:
print"Enter a number between 1-6. Please try again."
time.sleep(1)
except SyntaxError:
print"Enter a number between 1-6. Please try again."
time.sleep(1)
答案 1 :(得分:2)
输入数字1-6后,您永远不会将error2
设置为false。输入0
附录: 我不想仅仅使用变量来跟踪while循环。或者你可以做
while True:
if vending = what_you_want:
do_something()
#then to quit looping:
elif vending == 0:
break