【发布时间】:2022-01-12 19:37:41
【问题描述】:
基本上我正在尝试做一个猜谜游戏。有 3 个问题,每个问题你有 3 个猜测。问题是我不擅长编码,这只是我的第一次。
print("Guessing Game")
player_name = input("Hi! What's your name? ")
number_of_guesses1 = 0
number_of_guesses2 = 0
number_of_guesses3 = 0
guess1 = input("What is the most popular car company in America? ")
while number_of_guesses1 < 3:
number_of_guesses1 += 1
if guess1 == ("Ford"):
break
if guess1 == ("Ford"):
print('You guessed the answer in ' + str(number_of_guesses1) + ' tries!')
else:
guess2 = input("Try again:")
if guess2 == ("Ford"):
print('You guessed the answer in ' + str(number_of_guesses1) + ' tries!')
else:
guess3 = input("Try again:")
if guess3 == ("Ford"):
print('You guessed the answer in ' + str(number_of_guesses1) + ' tries!')
else:
print('You did not guess the answer, The answer was Ford')
guess1b = input("What color do you get when you mix red and brown?")
while number_of_guesses2 < 3:
number_of_guesses2 += 1
if guess1 == ("Maroon"):
break
if guess1b == ("Maroon"):
print('You guessed the answer in ' + str(number_of_guesses1) + ' tries!')
else:
guess2b = input("Try again:")
if guess2b == ("Maroon"):
print('You guessed the answer in ' + str(number_of_guesses1) + ' tries!')
else:
guess3b = input("Try again:")
if guess3b == ("Maroon"):
print('You guessed the answer in ' + str(number_of_guesses1) + ' tries!')
else:
print('You did not guess the answer, The answer was Maroon')
这种代码是有效的,但前提是你每个问题都连续答错 2 次,哈哈。我还没有想到实现计分器的方法(最后我想让它说你从 3 中得到了多少分。)代码显然也没有完成。基本上,我的问题是:当我回答错误一次然后在第二次尝试时正确回答它说它需要 3 次尝试时,怎么会这样?如果你在第一次或第二次尝试中得到正确的答案,我怎样才能让它忽略你剩下的剩余尝试?这是错误代码,例如,如果我在第二次尝试时正确:
Traceback (most recent call last):
File "main.py", line 20, in <module>
if guess3 == ("Ford"):
NameError: name 'guess3' is not defined
【问题讨论】:
-
欢迎来到Stack Overflow. 请注意这不是代码编写或辅导服务。我们可以帮助解决特定的技术问题,而不是对代码或建议的开放式请求。请编辑您的问题以显示您迄今为止尝试过的内容,以及您需要帮助的具体问题。请参阅How To Ask a Good Question 页面,详细了解如何最好地帮助我们。
-
您需要让用户输入 inside
while循环。否则你只问他们一次。 -
@itprorh66 “我的问题是:为什么我一次答错了,然后第二次就答对了,它说它需要 3 次尝试?如果你在第一次或第二次尝试我怎样才能让它忽略你剩下的尝试?这是错误代码,例如,如果我在第二次尝试时正确:"