如果列表包含其他

时间:2017-08-02 03:15:46

标签: python group-by

我有一份清单字典 dict = {k1:[v1],k2:[v1,v2,v3,v4,v5],k3:[v2,v3],k4[v1,v2]}
我想排序dict,因为下一个元素有前面的元素,例如

OrderedDict = ((k1,[v1]),(k4,[v1,v2]),(k3,[v2,v3]),(k2,[v1,v2,v3,v4,v5]))

并根据其优先级排序:

SortedGroup = [1:((k1,[v1])),2:((k4,[v1,v2]),(k3,[v2,v3])),3:(k2,[v1,v2,v3,v4,v5]))]

我已尝试sorted(dict.items(),key = lambda x: len(x[1])),但它基于len(list)仅列出了元素。考虑排列但没有看到很多例子。

1 个答案:

答案 0 :(得分:0)

请先查看官方文档,实际上有here的示例。

  
    
      

OrderedDict(已排序(d.items(),key = lambda t:t 1))