模式列表中数字的最高值

时间:2012-05-30 07:38:18

标签: python list frequency

所以我从列表中找到了数字的频率并创建了一个列表,例如[2:3,25:1,22:4,5:2,5:2]我之后尝试做什么有一个for循环检测最大频率(不同的数字可以有相同的频率),然后打印最高的数字和频率,可能超过一个。

1 个答案:

答案 0 :(得分:1)

取决于数据的结构方式

>>> data = {2:3 , 25:1, 22:4, 5:2, 5:2}
>>> max(data, key = lambda x: data[x])
22

>>> data = [(2, 3), (25, 1), (22, 4), (5,2), (5,2)]
>>> max(data, key = lambda x: x[1])
(22, 4)

应该这样做。

<强> [编辑]

>>> data = {2:3 , 25:4, 22:4, 5:2, 5:2}
>>> max_key = max(data.values())
>>> print [i for i in data if data[i] == max_key]
[22, 25]