





while True:
func()
answer = raw_input( "Loop again? " )
if answer != 'y':
break
Ха-ха, я тоже слишком медленный :)
keepLooping = True
while keepLooping:
# do stuff here
# Prompt the user to continue
q = raw_input("Keep looping? [yn]: ")
if not q.startswith("y"):
keepLooping = False
+1: формальное условие выхода без перерыва (также я удалил лишнюю печать)
Ааа, спасибо С. Лотт. Я участвовал в гонках и пропустил тот - спасибо! :)
Есть два обычных подхода, оба уже упомянутые, которые сводятся к следующему:
while True:
do_stuff() # and eventually...
break; # break out of the loop
или же
x = True
while x:
do_stuff() # and eventually...
x = False # set x to False to break the loop
Оба будут работать правильно. С точки зрения "звукового дизайна" лучше всего использовать второй метод, потому что 1) break может иметь противоречивое поведение во вложенных областях видимости на некоторых языках; 2) первый подход противоречит предполагаемому использованию «while»; 3) ваши распорядки всегда должны иметь одну точку выхода
Теперь, если вы сохранили два бита кода и удалили последние три абзаца, я обещаю, что проголосую за вас;)
Вот, я подошел к делу. Просто из любопытства, было ли что-то не так в том, что я сказал, или я просто сказал это?
While raw_input("loop again? y/n ") != 'n':
do_stuff()
опередить меня. это тот.