两人猜数游戏Python

2024-09-27 23:23:31 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图写一个游戏,玩家一选择一个数字,玩家二有五个猜测来猜它。如果他成功做到了,他赢了,如果没有,他就输了,一号球员赢了。在

所以我有代码,但是如果一号玩家选择了数字'3',玩家二号在他的任何一次行动中输入数字'3',它仍然显示玩家一获胜。在

>>> 
Player One enter you chosen number: 3
Player Two have a guess: 3
Player One wins.
>>> 

这种情况也会发生:

^{pr2}$

另外,玩家2可以有任意多个回合,但应该只有5个。如果他超过这个数量,玩家1自动获胜。这是我的密码:(我不知道我错了。)

def Game():
    Guess = 0
    NumberOfGuesses = 0
    NumberToGuess = int(input("Player One enter you chosen number: "))
    while NumberToGuess < 1 or NumberToGuess > 10:
        NumberToGuess = int(input("Not a valid choice, please enter another number: "))
    while Guess != NumberToGuess and NumberOfGuesses < 5:
        Guess = int(input("Player Two have a guess: "))
        NumberOfGuesses = NumberOfGuesses + 1
    if Guess == NumberToGuess:
        print("Player One wins.")
    else:
        print("Player Two wins.")


Game()

Tags: younumberinput玩家数字oneintplayer
2条回答

逻辑是错误的。{{cd2>如果输入不等于

然后你必须循环。然后在循环外检查玩家1是否成功。在

while Guess != NumberToGuess and NumberOfGuesses < 5:
    Guess = int(input("Player Two have a guess: "))
    NumberOfGuesses = NumberOfGuesses + 1
    if Guess == NumberToGuess:
        print("Player Two wins.")

if Guess != NumberToGuess:
      print("Player One wins.")

你的if语句是错误的。 而不是

if Guess == NumberToGuess:
    print("Player One wins.")
else:
    print("Player Two wins.")

应该是的

^{pr2}$

因为如果玩家2猜到玩家1选择的数字(NumberToGuess),他就赢了。 我不能重建你的第二个问题,当玩家1进入5时,玩家2立即获胜。对我来说很好。在

相关问题 更多 >

    热门问题