我有一個列表,其中包含由用戶輸入的一定數量的來自戰鬥的獲勝者,例如, winners = ['Hunt', 'Nunes', 'Cormier']
如何比較列表和字典值並分配變量
我與每個玩家的正確的猜測值和它們作爲鍵的名字和我的程序一本字典,然後比較了每個鍵的值獲獎名單,並告訴每個玩家有多少戰鬥他們猜中
for name in player_dict:
player_dict[name].sort()
player_dict[name] = set(player_dict[name]) & set(winners)
wins = (len(player_dict[name]))
print(name + ' guessed ' + str(wins) + ' fights correctly.')
我想要做的就是根據有多少人正確猜測,給每場比賽一個價值,然後使用這個數值來確定每個正確猜出勝利者的玩家將得到多少底池。
編輯:這裏是我的代碼的全部,以幫助提供清晰
#! python3
#fight_gambler.py - a program that lets players gamble on fights with friends
players = []
while len(players) >= 0:
name = input('Enter a name: ')
players.append(name)
if name == '':
players.pop()
break
else:
pass
player_dict = {name: [] for name in players} #creates a key for each name with that name as the key
print(player_dict)
fight_amount = int(input('How many fights are there? '))
fight_number = 1
for name in player_dict: #adds fight winner prediction as values to each name
fight_number = 1
while fight_number <= fight_amount:
answer = input(name + ', who will win fight ' + str(fight_number) + '? ')
player_dict[name].append(answer)
fight_number = fight_number + 1
fight_number = 1
winners = []
while fight_number <= fight_amount: # creates a list of fight winners
winner = input('Who won fight ' + str(fight_number) + '? ')
winners.append(winner)
fight_number = fight_number + 1
winners.sort()
for name in player_dict:
player_dict[name].sort()
player_dict[name] = set(player_dict[name]) & set(winners)
wins = (len(player_dict[name]))
print(name + ' guessed ' + str(wins) + ' fights correctly.')
如果發送'player_dict'數據,那麼人們可能會幫助您更好地 – Nilesh