根据字典映射到的列表长度从字典中获取项目

时间:2015-01-22 16:34:30

标签: python dictionary

所以我有一个dict,其格式如下

d = {
    1: [m1, m2],
    2: [m3, m5, m6],
    3: [m4],
    4: [m7, m8]
}

当我迭代到最先获得最大列表时,我想提取信息。但是因为当我做

这样的事情时,字典是无序存储的
for n, my_list in d.items():
    # do stuff..

我不能保证我会先获得2: [m3, m5, m6]条目。有没有干净的方法呢?

2 个答案:

答案 0 :(得分:4)

您只需要按值的长度对项目进行排序。

items = sorted(d.items(), key=lambda i: len(i[1]), reverse=True)

答案 1 :(得分:0)

您必须按其值大小对字典进行排序并相应地对其进行排序。

Ans:排序(d.items(),key = lambda x:len(x [1]))