다음 문장을 사용하여 플레이어 개체에 점을 추가하고 싶습니다.개체 속성에 액세스하는 데 문제가 있습니다.
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()
왜 마지막 'while'루프에서'flag'를 사용합니까? 무한 루프를 원한다면'while True :'를 사용하십시오. – Bakuriu