找到最高的钥匙

时间:2009-11-02 14:29:55

标签: python dictionary

我只是为什么我的代码不起作用感到困惑,这是我到目前为止的问题和代码(测试运行说我的答案是错误的)。

给定字典d,找到字典中最大的键,并将相应的值与变量val_of_max相关联。例如,给定字典{5:3, 4:1, 12:2},2将与val_of_max相关联。假设d不为空。

d = {5:3, 4:1, 12:2, 14:9}
val_of_max = max(d.keys())
print val_of_max

4 个答案:

答案 0 :(得分:12)

您的代码以最大值打印。你想要的是:

d = {5:3, 4:1, 12:2, 14:9}
val_of_max = d[max(d.keys())]
print val_of_max

也就是说,您必须取消引用键才能返回值。

答案 1 :(得分:5)

这样做:

>>> d = {5:3, 4:1, 12:2, 14:9}
>>> d[max(d)]
9
>>> max(d)        # just in case you're looking for this
14

答案 2 :(得分:1)

相同的代码,但记得调用密钥的值:

d = {5:3, 4:1, 12:2, 14:9}
val_of_max = max(d.keys())
print d[val_of_max]

答案 3 :(得分:0)

d= {5:3, 4:1, 12:2, 14:9}

打印与最大键关联的值:

print max(d.iteritems())[1]

打印与最大值关联的密钥:

import operator
print max(d.iteritems(), key=operator.itemgetter(1))[0]