以下是函数hangman的最终代码,我收到语法错误。
def hangman(secretWord):
# secretWord: string, the secret word to guess.
# Starts up an interactive game of Hangman.
#At the start of the game, let the user know how many
# letters the secretWord contains.
guess_count = 8
lettersGuessed = []
guessWord=[]
# * Ask the user to supply one guess (i.e. letter) per round.
while guess_count>0:
guessWord = input('Please Guess a letter: ')
lettersGuessed = guessWord.lower()
print("You have "+str(guess_count)+ " guesses left")
print("Available letters: ",getAvailableLetters(lettersGuessed)
if isWordGuessed(secretWord, lettersGuessed)==True:
guess_count = guess_count
print("Good guess: ",getGuessedWord(secretWord, lettersGuessed))
print("You have "+str(guess_count)+ " guesses left.")
print("Available letter: " + str(getAvailableLetters(lettersGuessed)))
elif isWordGuessed(secretWord, lettersGuessed)==False:
print("Available letter: " + str(getAvailableLetters())
print("Oops! That letter is not in my word: ",getGuessedWord(secretWord, lettersGuessed))
guess_count -= 1
elif secretWord==getGuessedWord(secretWord, lettersGuessed):
print("Congratulations, you won!")
break
在不止一个地方没有右括号。查看上面报告语法错误的行,并检查匹配的括号。
这是更正后的代码。正如 bashBedlam 所说,这只是括号不匹配的情况——
def hangman(secretWord):
guess_count = 8
lettersGuessed = []
guessWord=[]
# * Ask the user to supply one guess (i.e. letter) per round.
while guess_count>0:
guessWord = input('Please Guess a letter: ')
lettersGuessed = guessWord.lower()
print("You have "+str(guess_count)+ " guesses left")
print("Available letters: ",getAvailableLetters(lettersGuessed))
if isWordGuessed(secretWord, lettersGuessed)==True:
guess_count = guess_count
print("Good guess: ",getGuessedWord(secretWord, lettersGuessed))
print("You have "+str(guess_count)+ " guesses left.")
print("Available letter: " + str(getAvailableLetters(lettersGuessed)))
elif isWordGuessed(secretWord, lettersGuessed)==False:
print("Available letter: " + str(getAvailableLetters()))
print("Oops! That letter is not in my word: ",getGuessedWord(secretWord, lettersGuessed))
guess_count -= 1
elif secretWord==getGuessedWord(secretWord, lettersGuessed):
print("Congratulations, you won!")
break