代码之家  ›  专栏  ›  技术社区  ›  Rohan Mittal

按dict值对dict排序

  •  -2
  • Rohan Mittal  · 技术社区  · 2 年前

    dict 字典 list 两个整数的。我正试着对内部的行进行排序 字典

    这是 字典 :

    {'EQUITY': {'CA': [15, 20], 'US': [25, 30]}, ... }
    

    这就是我目前正在尝试的:

    dict(sorted(data.items(), key=lambda item: item[1][ ?? ], reverse=True))

    提前感谢您的帮助。

    1 回复  |  直到 2 年前
        1
  •  0
  •   j1-lee    2 年前

    你就快到了。尝试下面的方法,使用dict理解和 sorted 具有 key 参数:

    dct = {'EQUITY': {'CA': [15, 20], 'US': [25, 30]}, 'FUTURE': {'CA': [5, 5], 'US': [10, 2]}}
    
    output = {k: dict(sorted(d.items(), key=lambda item: item[1][0], reverse=True)) for k, d in dct.items()}
    
    print(output)
    # {'EQUITY': {'US': [25, 30], 'CA': [15, 20]}, 'FUTURE': {'US': [10, 2], 'CA': [5, 5]}}
    

    这里,每个 item 属于 d.items() ('CA', [15, 20]) 因此 15 ,您需要 item[1][0]