我希望通过以下语句为玩家的对象添加积分。
players[players.index(active_player)].points += moves[active_move]
设置对象的整体代码非常简单,但我收到一个值错误,提示我输入的玩家不在列表中。补充代码如下:
class Player(object):
def __init__(self, name):
self.name = name
self.points = 0
def setup(players):
numplayers = int(raw_input("Enter number of players: "))
for i in range(numplayers):
name = raw_input("Enter player name: ")
player = Player(name)
players.append(player)
def display_moves(moves):
for item in moves:
print item, moves[item]
def main():
players = []
moves = {'Ronaldo Chop': 10, 'Elastico Chop': 30, 'Airborne Rainbow': 50, 'Fancy Fake Ball Roll': 50, 'Stop Ball and Turn': 20}
setup(players)
display_moves(moves)
flag = False
while not flag:
active_player = raw_input("Enter a player (0 to exit):")
if active_player == 0:
break
active_move = raw_input("Enter a move: ")
players[players.index(active_player)].points += moves[active_move]
main()