0
我注意到這是一個受歡迎的TypeError,但我找不到解決方案。看看我的代碼,說什麼是錯的,請:Dict裏面的列表和TypeError:列表索引必須是整數,而不是字典
import random
players_list = []
def add_player():
possible_flags = {'is_computer', 'is_human'}
decision = -1
while decision != '0':
player_name = input('Give a name: ')
while player_flag not in possible_flags
player_flag = input("Type 'is_computer' or 'is_human': ") #is_computer or is_human
players_list.append({'player_name': player_name, 'player_flag': player_flag, 'player_decision': None})
decision = input('Do you want add a new player [1]? To leave type [1] ')
def play():
options = {1: 'rock', 2: 'paper', 3: 'scissors', 4: 'lizard', 5: 'Spock'}
for i in players_list:
if('is_computer' in players_list[i]):
player_decision = random.choice(options)
elif('is_player' in players_list[i]):
player_decision = input()
player_list[i]['player_decision'] = options[player_decision]
add_player()
play()
的問題是存在的:
if('is_computer' in players_list[i]):
我也試過:
if('is_computer' in players_list[i]['player_flag']):
但是,這也不起作用。 我只是不明白它。把詞典放在名單中是否犯了錯誤?我會很感激任何有關它的文章的鏈接。
非常感謝
'我在players_list中:\ n ... players_list [i]':Python不是javascript。 – Evert