import random
#create a sequence of words to choose from
WORDS = ("python", "jumble", "easy", "difficult", "answer", "xylophone")
#pick one word randomly from the sequence
word = random.choice(WORDS)
#create a variable to use later to see if the guess is correct
correct = word
#create a jumbled version of the word
jumble = ""
count = 1
score = 100
hint = ""
while word:
position = random.randrange(len(word))
jumble += word[position]
word = word[:position] + word[(position+1):]
#start the game
print ("""
Welcome to Word Jumble!
Unscramble the letters to make a word.
(Press the enter key at the prompt to quit.)
""")
print("The jumble is: ", jumble)
guess = input("Your guess: ").lower()
while(guess != correct) and (guess != ""):
print("Sorry, that's not it.")
guess = input("Your guess: ").lower()
count += 1
if count == 3:
option = input("Would you like a hint? (yes/no)" + '\n').lower()
if option == "yes":
hint = "yes"
if word == "python":
print("HINT: This was used to make this game.")
elif word == "jumble":
print("HINT: The name of the game.")
elif word == "easy":
print("HINT: Part of the Staples slogan.")
elif word == "difficult":
print("HINT: A synonym for hard.")
elif word == "answer":
print("HINT: Opposite of question.")
elif word == "xylophone":
print("HINT: An instrument.")
if guess == correct:
print("That's it! You guess it!\n")
score = score - 5*count
if hint == "yes":
score = score - 20
print("Thanks for playing. The word was", correct, ".")
print("You score is: " + str(score))
input("\n\nPress the enter key to exit.")
所以我用Python做了一个小游戏,基本上是要求用户解开单词的谜题,我在执行所有if语句时遇到了问题。当我运行程序时,它可以正常工作,直到它要求用户给出提示。如果回答提示为“是”,它会回到while循环中,而不是显示提示,只是说“对不起,这不是正确答案”,并继续循环,直到用户得到正确答案。所以代码中的以下if语句没有被执行,有人能解释一下为什么吗?我该如何修复它?
if option == "yes":
hint = "yes"
if word == "python":
print("HINT: This was used to make this game.")
elif word == "jumble":
print("HINT: The name of the game.")
elif word == "easy":
print("HINT: Part of the Staples slogan.")
elif word == "difficult":
print("HINT: A synonym for hard.")
elif word == "answer":
print("HINT: Opposite of question.")
elif word == "xylophone":
print("HINT: An instrument.")
()
,那么它将无法工作。添加()
应该会有所不同。你是否保存了源代码并重新运行了它? - TigerhawkT3