def guess():
while True:
try:
guess = raw_input("Guess your letter")
if len(guess) != 1 or guess.isdigit() == True:
print "Please guess again"
if len(guess) == 1 and guess.isdigit() == False:
guessed.append = guess
return guess
break
except StandardError:
pass
print guess()
Этот цикл продолжает повторяться независимо от того, какое значение я вкладываю в исходный ввод. Зачем???Python: Почему мой цикл while продолжает циклироваться
вероятно потому, что 'guessed.append = guess' вызывает ошибку. Не могу быть уверенным, потому что вы не говорите нам, что «угадано» – Paul
Другие люди уже поставили диагноз вашей проблемы, но, вероятно, стоит заметить, что ваше заявление «break» недостижимо (и поэтому бесполезно). –
Операции 'try',' except' часто скрывают реальные ошибки. Почему вы его используете? похоже, что у вас уже есть ошибка, зависящая от ваших выражений 'if'? – TehTris