Python - Number Racing 2随机生成的玩家

时间:2013-07-20 14:09:33

标签: python dictionary pygame

我试图得到一个输出,每一轮你选择1到3之间的数字,你的两个对手也是如此。如果是球员的号码 是独特的,然后他们向前迈出了许多步骤。如果其他玩家也选择相同的号码, 这些球员都没有动。第一个获得10或更高胜利的玩家,但有可能是2或3 球员可以同时越线,在这种情况下,将有多个获胜者分享 荣耀。


到目前为止我有什么。

def test():
print("Me\t\tPositions: 0\nGabriel\t\tPositions: 0\nJoy\t\tPositions: 0")
scoreLimit = 10       
wins = {"Me":'0', "Gabriel":'0', "Joy":'0'}

randomGuessP1 = randrange(1, 4) 
randomGuessP2 = randrange(1, 4)  

meGuess = input("Choices: ")
if meGuess != randomGuessP1 or randomGuessP2:
    meGuess += wins[key] --doesn't work.
for key in wins:
    print(key, wins[key])    
scoreLimit = 10

现在已经尝试了一段时间,我似乎无法做到正确.. 我一直在改变不同的风格和不同的方式来处理它...但这是迄今为止最稳定的ive ......

示例ouput = Choice =来自玩家的输入(Me)

Me Position: 0
Gabriel Position: 0
Joy Position: 0
Choice: 2
Me : 2 -> 2
Gabriel : 3 -> 0
Joy : 3 -> 0
Choice: 3
Me : 3 -> 2
Gabriel : 1 -> 1
Joy : 3 -> 0
Choice: 3
Me : 3 -> 5
Gabriel : 1 -> 1
Joy : 1 -> 0
Choice: 2
Me : 2 -> 7
Gabriel : 1 -> 1
Joy : 1 -> 0
Choice: 1
Me : 1 -> 8
Gabriel : 2 -> 3Joy : 3 -> 3
Choice: 2
Me : 2 -> 8
Gabriel : 2 -> 3
Joy : 3 -> 6
Choice: 3
Me : 3 -> 11
Gabriel : 2 -> 5
Joy : 1 -> 7
The winner is: Me

不要真的想要任何勺子喂食,但它会很好,如果没有,指向正确的方向将是可爱的:))

1 个答案:

答案 0 :(得分:0)

您需要使用Me密钥而不仅仅是“密钥”用于您的字典:

meGuess = input("Choices: ")
if meGuess != randomGuessP1 or randomGuessP2:
    meGuess += wins['Me'] # use 'Me' rather than key

至于你的游戏,你可以使用外循环来进行多轮游戏:

while max(wins.values()) < scoreLimit: # loop until someone has scoreLimit wins
    # your game logic goes here: