我有一个列表,其中有一定数量的战斗胜利者,由用户输入,例如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.')
我想做的是根据猜对了多少人给每一场比赛一个值,然后用这个值来确定每一个猜对了胜利者的玩家能得到多少。在
编辑:这里是我的全部代码,以帮助提供清晰
^{pr2}$
下面计算一个玩家在
players
字典中所做的正确猜测数。如果是这样,你可以用list
的intersection()
和winners
的set
来实现。在为此,将一个获奖者姓名列表添加到正在运行的
total
,然后将其转换为Counter集合(接受iterable并返回一个键/值数据结构,该结构记录列表中相同键的出现次数)。由此我们可以推断出必要的猜测数据。在或者你可以采用一种更为函数式编程的方法(灵感来自于user:@AMomchilov's思想)。在
^{pr2}$样本输出:
相关问题 更多 >
编程相关推荐