Python цикл пока повторяется - PullRequest
0 голосов
/ 01 ноября 2011

У меня проблемы с циклом while. Я запускаю его на затмении и набрал в источнике:

a = raw_input("Mom im hungry!!!!!! FEED MEEEEE" )
while a != "Feed yourself":
    print("Thats gross")

В результате, когда я набираю неправильный ответ, он отвечает:

Thats gross 
thats gross 

и т. Д.

Ответы [ 3 ]

5 голосов
/ 01 ноября 2011

То, что вы действительно хотите, это:

a = raw_input("Mom im hungry!!!!!! FEED MEEEEE" )
while a != "Feed yourself":
  print("Thats gross")
  a = raw_input("Mom im hungry!!!!!! FEED MEEEEE" )    # do something that may alter a !

потому что без 2-й строки в цикле while ...

  • ничто не изменяет переменную a,
  • следовательно, А до сих пор не "Накорми себя"
  • следовательно, условие истинно,
  • следовательно, содержимое цикла повторяется!
4 голосов
/ 01 ноября 2011

raw_input выполняется только один раз, а затем a сохраняет свое значение. Если вы не ввели "Feed yourself" в первый раз, он зациклится навсегда.

2 голосов
/ 01 ноября 2011
a = raw_input("Mom im hungry!!!!!! FEED MEEEEE" )
while a != "Feed yourself":
    print("Thats gross")
    a = raw_input("Mom im hungry!!!!!! FEED MEEEEE" )
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...