如何在其他值中仅打印键的最高值?

时间:2015-02-03 16:19:39

标签: python sorting dictionary

我在尝试解决此任务时遇到问题,所以我在失败几次之后就在这里,我想知道当一个密钥存储多重时,我怎么才能打印一个密钥(名称)的最高值(分数)值如:

Rob Scored: 3,5,6,2,8

所以关键是“抢”,价值将是他的得分。我需要输出Rob Scored: 8但是我仍然需要字典来存储以前的分数,然后打印每个键(名称)的平均分数。

到目前为止,我已经有了这段代码,并试图使用max但是我失败了。

from collections import OrderedDict
dictionary = {}

f = open('ClassA.txt', 'r')
d = {}
for line in f:
    firstpart, secondpart = line.strip().split(':')
    dictionary[firstpart.strip()] = secondpart.strip()
    columns = line.split(": ")
    letters = columns[0]
    numbers = columns[1].strip()
    if d.get(letters):
        d[letters].append(numbers)
    else:
        d[letters] = list(numbers)
sorted_dict = OrderedDict(
sorted((key, list(sorted(vals, reverse=True))) 
       for key, vals in d.items()))
print (sorted_dict)

1 个答案:

答案 0 :(得分:0)

只需使用python的max函数:

dict1 = { "score" : [3,5,6,2,8] }
print("Rob Scored", max(dict1["score"]))