Причина, почему он внезапно заканчивается, потому что это проверка на посимвольно, а не проверять слово целиком, то решить, если предположение было неверным.
Here's my code for this solution, documented so you can understand:
в основном, имеют переменную, которая действует как переключатель, когда у вас есть правильное предположение включить его, то есть чек после «для» петли, чтобы увидеть, нужно ли жизнь быть отнято или не.
Вы можете видеть, что это то, что я делаю с «правильной» переменной, которую я создаю перед циклом, и проверить следующее.
Надеется, что это помогает^^ Connor
редактировать:.
я собираюсь разбить это вниз немного, так что это не огромная свалка: P
Проверьте код, если вы не можете понять это.
Вы получаете вход, проверяете, что это одна буква, и делайте doohickey с дисплеем.
проверки по каждому характера ...
#we need to check if we need to take a life away
correct = False
Это где создается «переключатель» Я говорил о том, только булеву переменную.
#loop through the word to guess, character by character.
for char in word:
#if the character is in the old display, add it to the new on.
if char in lastdisplay:
display += char
Здесь, если персонаж был отображен заранее, мы выведем его на новый дисплей.
#if the character is in the guess, add it to the display.
elif char in guess:
display += char
#we made a correct guess!
correct = True
Если угадали характер есть характер, который мы в настоящее время проверки добавить его на экран, и переверните переключатель в «True»
#otherwise we need to add a blank space in our display.
else:
if char == ' ':
display += ' ' #space
else:
display += '_' #empty character
В противном случае, ничего не произошло, добавьте в пространстве/blank и продолжить цикл.
#if we didn't get a correct letter, take a life.
if not correct:
lives -= 1
Здесь были мы проверяем «переключатель», если это «True», мы не должны принимать жизнь,
В противном случае «переключатель„False“, и мы берем жизнь ,
может быть, потому что вы забираете жизнь на каждый символ, кроме ''? – Julien
Возможно, вы можете увидеть это: –
caimaoy
Для каждой проверки чар, вы уменьшили жизнь, вместо этого включите это после цикла for (один раз за итерацию)? – Vinay