就像我在 python 中一样。
choice1 = raw_input('John Blue Green')
if choice1 == 'A':
print('blah')
elif choice1 == 'B':
print('blahblah')
有人输入 B 但它不正确,所以我希望它返回并再次询问。我怎么做?当心,我是一个编程菜鸟。
就像我在 python 中一样。
choice1 = raw_input('John Blue Green')
if choice1 == 'A':
print('blah')
elif choice1 == 'B':
print('blahblah')
有人输入 B 但它不正确,所以我希望它返回并再次询问。我怎么做?当心,我是一个编程菜鸟。
你基本上需要循环这个。一个例子是将其置于无限循环中,并在达到所需结果时手动中断它:
while True:
choice1 = raw_input('John Blue Green')
if choice1 == 'A':
print('blah')
break # <-- 'A' is okay, so we can get out of the loop then
elif choice1 == 'B':
print('blahblah')
根据您的情况,您当然可以调整True
循环条件以使其不是无止境的,而是对用户输入做出实际反应。然后你就不需要了break
,但循环自然会停止循环。但是,如果您有多个接受输入值,那么仍然使用中断而不是使用巨大的循环条件可能会更干净。
尝试一个while循环,这样你会得到:
choice1 = ''
while (choice1 != 'A'):
choice1 = raw_input('John Blue Green')
if (choice1 == 'A'):
print('blah')
elif (choice1 == 'B'):
print('blahblah')
以下是关于 while 循环的一些解释: http ://www.tutorialspoint.com/python/python_while_loop.htm
你应该把你的代码放在一个循环中并要求确认(或根据你自己的逻辑决定以某种方式决定)是否退出循环:
confirmation = 'n'
while (confirmation != 'y'):
choice1 = raw_input('John Blue Green')
if choice1 == 'A':
print('blah')
elif choice1 == 'B':
print('blahblah')
confirmation = raw_input('are you happy with the result?(y/n)')
choice1 = raw_input('John Blue Green')
while(choice1 == 'B'):
print "blahblah"
choice1 = raw_input('John Blue Green')
print "blah"