对于学校,我正在为游戏的排名列表编写一个小程序。为此,我使用字典,将玩家的名称作为键名,将分数作为键值。将有10场比赛,每场比赛都有一个自动排名系统,我将其打印到文件中。香港专业教育学院已经设法编码排名系统,但现在我面临更大的挑战,我无法解决:
我必须进行总体排名,这意味着someplayername可以在具有多个得分的多个比赛中使用,但我只需要保留重复项中的最高得分即可。
简而言之 :我需要一些帮助来保持重复键的最高价值:
像这样:
dict1 = {"a": 6, "b": 4, "c": 2, "g": 1} dict2 = {"a": 3, "f": 4, "g": 5, "d": 2} dictcombined = {'a': 6, 'b': 4, 'c': 2, 'g': 5, 'f': 4, 'd': 2}
正常的合并选项只接受第二个dict,因此取该值。
提前thnx
您需要具有一个跟踪每个玩家最高得分的功能。如果尚不存在,它将添加一个玩家到总数中;如果更高,则添加一个玩家。像这样:
def addScores(scores, total): for player in scores: if player not in total or total[player] < scores[player]: total[player] = scores[player]