【问题标题】:sort dict objects according to property inside an object根据对象内部的属性对 dict 对象进行排序
【发布时间】:2020-03-08 23:22:22
【问题描述】:

我有一个具有利润优先级的 Player 类。 我想对这个 requested_players 字典进行排序:

requested_players = [
        {
            'player': Player("20801", "Cristiano Ronaldo", 93, 520000),
            'priority': 0
        },
        {
            'player': Player("173731", "Gareth Bale", 85, 9000),
            'priority': 0
        },
        {
            'player': Player("158023", "Lionel Messi", 94, 490000),
            'priority': 0
        }
    ]

根据该优先级字段。 我尝试使用 sorted 方法。这就是我开始的方式:

sorted(list(map(lambda player: player['player'].profit,requested_players)),key=????)

我被困在这里 - 虽然不确定 lambda 是否正确

【问题讨论】:

    标签: python python-3.x sorting dictionary


    【解决方案1】:

    您应该只将函数作为key 参数传递,而不是使用map

    sorted(requested_players, key=lambda player: player['player'].profit)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-05-03
      • 2023-03-15
      • 1970-01-01
      • 1970-01-01
      • 2022-01-11
      相关资源
      最近更新 更多