【问题标题】:How can I order dictionary according to value size in python?如何根据python中的值大小订购字典?
【发布时间】:2022-11-13 22:59:34
【问题描述】:

我有一本字典,例如:my_dict = {key1: [X,Y,Z], key2: [X,X,X,Y,Z], key3: [X]} 我想创建一个列表,其中的键从最长到最短排列。

对于此示例,列表应为 ls = [key2, key1, key3]

【问题讨论】:

  • 请使用您尝试过的代码更新您的问题。
  • “list.sort”方法接受“key”参数。此键功能可以提供给定键的长度。

标签: python list sorting dictionary


【解决方案1】:
sortedList = sorted(
    list(my_dict.keys()), 
    key= lambda dictKey: len(my_dict[dictKey]), 
    reverse= True
)

解释 : 第一个参数是要排序的列表。在你的情况下,字典的键。

第二个参数是排序键:它如何比较列表中的两个元素?在您的情况下,通过字典中键的值的 len 。 所以它接收一个函数,对于列表中的每个项目(字典中的键),它返回字典中其对应值的 len。

第三个参数表示排序需要从最大(最长)到最小(最短)

【讨论】:

    猜你喜欢
    • 2011-05-15
    • 2021-05-23
    • 2013-06-10
    • 1970-01-01
    • 1970-01-01
    • 2012-05-10
    • 2010-10-26
    • 2021-11-02
    • 2023-01-30
    相关资源
    最近更新 更多