如何获得来自多个用户的输入

问题描述:

这是一个3人游戏。在这个游戏中,1到99之间的秘密数字是随机生成的。每个玩家轮流猜测这个秘密号码。玩家将被告知他的猜测是高于还是低于随机生成的数字。当其中一名玩家猜对时,游戏将结束。 出局将显示每个球员的猜测数量和胜利者。如何获得来自多个用户的输入

我已经输入了一些代码:

import random 

userNumber = input("enter a number between 1 and 99:") 
secretNummber = random.randint(1,99) 
if userNumber > secretNumber: 
    print "too high..." 
elif userNumber < secretNumber: 
    print "too low..." 
else: 
    print "you made the right guess..." 
print "secret number"+str(secretNumber) 
+0

这是什么问题? – Serial

+0

每个猜测都会产生一个新号码。 – andrewb

你可以做的是使用一个循环为每个猜测的“圆”,然后坐3个输入每轮:

import random 

secretNumber = random.randint(1,99) 

while True: 
    for player in range(1,4): 
     userNumber = input("Player %s: enter a number between 1 and 99:" % player) 

     if userNumber > secretNumber: 
      print "too high..." 
     elif userNumber < secretNumber: 
      print "too low..." 
     else: 
      print "Player %s, you made the right guess..." % player 
      exit(0) 

import random 
from itertools import cycle 

secretNumber = random.randint(1,99) 

for player in cycle(["Tom", "Dick", "Harry"]): 
    userNumber = int(raw_input("{}: enter a number between 1 and 99:".format(player))) 

    if userNumber > secretNumber: 
     print "too high..." 
    elif userNumber < secretNumber: 
     print "too low..." 
    else: 
     print "{}, you made the right guess...".format(player) 
     break 
+0

有没有一种方法来计算猜测的数量 –

+0

你可以使用'for guess_number,枚举中的玩家(cycle([“Tom”,“Dick”,“Harry”]),1):' –