<pre><code># This program will play the classic game of "Hangman", with a certain amount of times you can fail, in the end telling the user if they have failed or succeeded in guessing the word
# Creating variables for the number of times players can guess and establishing lists for storing letters they have guessed and lists for what they have successfully guessed so far.
lives = 6
val=0
word = 'banana'
listGuess = []
wordAsList = list(word)
blanks = '_'*len(word)
blankList = list(blanks)
blankReference = list(blanks)
print('Word: ')
#Printing the blanks in accordance with the number of letters in the word.
print(' '.join(blanks) +
'\n')
#Creating a loop that allows the player to continue guessing, (or failing).
while lives != 0 :
guess = input('Your guess: ')
#Creating certain things the user cannot input.
if len(guess.lower()) > 1 :
print('\n' + 'Try entering only one character.')
print(' '.join(blankList) + '\n')
elif guess.lower() == '' or guess.lower() == ' ' :
print('\n' + 'Try entering a character, you know. From the alphabet.')
print(' '.join(blankList) + '\n')
elif guess.lower() in listGuess :
print('\n' + 'You\'ve already guessed that letter, genius. -1 life.')
lives = lives - 1
print('You have', lives, 'lives remaining.')
print(' '.join(blankList) + '\n')
#Replacing the black dashes with the succefully guessed letter, in a list by comparing it to a list of guessed letters.
else :
listGuess.append(guess)
count = 0
for letter in word :
if guess == wordAsList[count] :
blankList[count] = wordAsList[count]
val=val+1
count = count + 1
#Telling the user whether their guess was in the word and showing them an updated version of the blanks, containing guessed characters if availible. Also finds if the user successfully guessed the word, or if they failed.
if val == 0 :
#ERROR HAPPENING HERE^
print('\n' + 'Bad luck. Your guess was not in the word.')
lives = lives - 1
print('You have', lives, 'tries remaining.')
print(' '.join(blankList) + '\n')
elif word != ''.join(blankReference) :
count = 0
for item in blankReference :
item = blankList[count]
count = count + 1
if ''.join(blankList) == word :
print('\n' + ' '.join(blankList))
print('Congratulations, you have successfully guessed the word and saved the convicted man.')
quit()
else :
print('\n' + 'Your guess was in the word!')
print(' '.join(blankList) + '\n')
val=0
print('Bad luck! The man is dead. ')
</code></pre>
<p>在我的电脑上测试它工作。。。。我希望这能帮助你:)</p>