Python - 当无法使用break语句时该怎么办?
当你遇到这种情况时,怎么才能跳出循环呢?(我还是个初学者,所以虽然这可能是个“简单”的问题,但我并不懂所有的东西)
while True:
s = input('Enter something : ')
if len(s) > 3:
print('too big')
continue
if s == 'quit':
break
print('something')
正如你所看到的,你无法跳出循环,因为“quit”这个词有超过三个字符。
2 个回答
3
你可以使用 iter
这个函数,配合一个哨兵值和一个 for
循环,来代替 while
循环:
for s in iter(lambda: input('Enter something : '), 'quit'):
if len(s) > 3:
print('too big')
else:
print('something')
2
你应该重新调整一下你的程序,把第二个if语句放在第一个if语句的上面:
while True:
s = input('Enter something : ')
if s == 'quit': # Do this check first
break
elif len(s) > 3: # Then see if the input is too long
print('too big')
continue
print('something')