了解最大化

时间:2016-11-08 12:45:24

标签: python python-3.x

我目前正在学习Python作为学生,但我似乎无法理解字典。

让我们说

d = {'I': 1, ' ': 2, 'P': 1, 'L': 1, 'E': 3, 'H': 1, 'D': 1, 'N': 1}

我想使用函数max返回具有最高值的键。

max (d.values(), key = lambda x: x[0])

但我得到一个错误,说

TypeError: 'int' object is not subscriptable

1 个答案:

答案 0 :(得分:0)

您要求max()获取最大,因为您已通过d.values()。这些值中的每一个都是int个对象,因此您无法对其进行x[0]

传入字典本身,并key使用d.get。对该对象的迭代生成密钥,max()将根据d.get(k)返回的内容找到密钥:

max(d, key=d.get)