Vilib 2020-06-13 11:09 采纳率: 0%
浏览 998

python列表中的字典排序, 先按第一个键排序,再按第二个键排序

dl = [
{
    "viewTimes": 236,
    "topTimes": 49,
    "stepsNum": 76,
    "collTimes": 321
},
{
    "viewTimes": 236,
    "topTimes": 47,
    "stepsNum": 58,
    "collTimes": 344
},
{
    "viewTimes": 238,
    "topTimes": 53,
    "stepsNum": 11,
    "collTimes": 321
},
{
    "viewTimes": 240,
    "topTimes": 31,
    "stepsNum": 39,
    "collTimes": 344
},
{
    "viewTimes": 240,
    "topTimes": 38,
    "stepsNum": 13,
    "collTimes": 200
}]

我想对上面的列表里面的字典进行排序,先按viewTimes降序排列,再按stepsNum进行升序排列

  • 写回答

3条回答 默认 最新

  • hill-ghost 2020-10-04 23:35
    关注

    items = sorted(dl,key=lambda x:(-x["viewTimes"],x["stepsNum"]))
    print(items)

    #两行代码即可,

    评论

报告相同问题?