我正面临着如何在我的Hangman游戏中检测重复输入的问题。请帮我! 这是我的代码:(首先我称之为游戏功能。我使用while循环) def checkValidGuess():
if guessword in guess:
print("Repeat")
elif guessword in num:
print("You can only input letter a-z")
print("Try again")
elif len(guessword) >1:
print("You can only guess one letter at a time!")
print("Try again")
def checkPlayerWord():
if guessall == word:
print("Well done")
else:
print("Uh oh!")
def checkLetterInWords():
if guessword.lower() in word:
print("Well done!",guessword,"is in my word")
elif guessword.lower() not in word and guessword.lower() not in num:
print("Try again")
choose = input("Enter your choice:")
readFileWords()
time =10
word = getRandomWord()
while time !=0 and word:
print("You have", time, "guesses left.")
guessword = input("Guess a letter or enter '0''to guess the word:")#This is user input to guess the letter
num = ["1","2","3","4","5","6","7","8","9"]
guess=[]
checkValidGuess()
if guessword =="0":
guessall = input("What is the word: ")
checkPlayerWord()
else:
checkLetterInWords()
答案 0 :(得分:0)
您可以尝试以下代码:
def checkValidGuess():
if guessword in guess:
print("Repeat")
elif guessword in num:
print("You can only input letter a-z")
print("Try again")
elif len(guessword) > 1:
print("You can only guess one letter at a time!")
print("Try again")
def checkPlayerWord():
if guessall == word:
print("Well done")
else:
print("Uh oh!")
def checkLetterInWords():
if guessword.lower() in word:
print("Well done!", guessword, "is in my word")
elif guessword.lower() not in word and guessword.lower() not in num:
print("Try again")
choose = input("Enter your choice:")
readFileWords()
time = 10
word = getRandomWord()
guess = [] # list to store the input values
while time != 0 and word:
print("You have", time, "guesses left.")
guessword = input("Guess a letter or enter '0''to guess the word:") # This is user input to guess the letter
num = ["1", "2", "3", "4", "5", "6", "7", "8", "9"]
checkValidGuess()
guess.append(guessword) # appending the input to list
if guessword == "0":
guessall = input("What is the word: ")
checkPlayerWord()
else:
checkLetterInWords()
guess = []
必须在循环之外声明,否则每次迭代都会创建一个新的list