所以我决定用 Python 编写 Monopoly,但我在更新玩家位置时遇到了一些麻烦。我编写了一个循环遍历玩家,为每个玩家掷骰子,然后更新他们的位置。问题是 location 变量没有保持最新的位置,它在 for 循环开始时一直重置回 0。这是我的代码:
player1location = 0
def turn(numberPlayers, player, player1location, Board):
for player in range(numberPlayers):
player = 'Player'+str(player+1)
print 'It\'s', player, 'turn!'
print player1location
rollDice = raw_input('Press Enter to roll the dice!')
diceRoll = random.randint(1,6)
print player, 'rolled a', diceRoll
player1location = player1location + diceRoll
print 'You landed on', player1location
print '\n'
while True:
turn(numberPlayers, player, player1location, Board)
如有必要,我可以提供更多代码,但我认为这是控制玩家位置的一切。谢谢!
编辑:显然我正在更改局部变量而不是全局变量。我将如何更改全局变量?