我发现其他问题的答案没有帮助
while 1 == 1:
do = raw_input('What would you like to do?')
在上面的例子中,您可以看到代码是为了永久循环,例如:
if do == 'x':
print 'y'
elif do == 'z':
print 'a'
所以这个'如果'声明已经执行,我想要' raw_input'再次进行,以便该人可以输入其他内容,然后程序再次开始。 我不想把整个程序放在一个 虽然是真的: 程序或 而1!= 2: statement.Just干净的语法。 谢谢!
答案 0 :(得分:2)
通常在满足某个条件之前执行此操作,例如,用户键入q
以退出;否则它只是一个无限循环,你需要强制退出整个程序。
请尝试使用此逻辑:
result = raw_input('What would you like to do? Type q to quit: ')
while result.lower() != 'q':
if result == 'x':
print 'y'
if result == 'z':
print 'a'
result = raw_input('What would you like to do? Type q to quit: ')
print('Quitting. Good bye!')
答案 1 :(得分:0)
def user_input():
do = raw_input('What would you like to do?')
if do == 'x':
print 'y'
user_input()
elif do == 'z':
print 'a'
user_input()
elif do =='quit':
print 'exiting user input'
else:
user_input()
user_input()
上面使用了一些递归调用,并且不如while语句简洁,但如果你想避免使用while,那么它会起作用。