列表嵌套字典,根据字典某一key排序

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了列表嵌套字典,根据字典某一key排序相关的知识,希望对你有一定的参考价值。

在返回列表嵌套字典时候,往往需要对数据进行一定的处理:
按照字典中某一个key排序

In [87]: a = [{"name": "牛郎", "age": 23},{"name":"许仙", "age": 20},{"name":"董永", "age": 18}]
In [88]: a
Out[88]:
[{‘name‘: ‘牛郎‘, ‘age‘: 23},
 {‘name‘: ‘许仙‘, ‘age‘: 20},
 {‘name‘: ‘董永‘, ‘age‘: 18}]
In [89]: a.sort(key=lambda x:(x[‘name‘], x[‘age‘]))  # 根据字典中name,age排序
In [90]: a
Out[90]:
[{‘name‘: ‘牛郎‘, ‘age‘: 23},
 {‘name‘: ‘董永‘, ‘age‘: 18},
 {‘name‘: ‘许仙‘, ‘age‘: 20}]
In [91]: a.sort(key=lambda x:(x[‘age‘], x[‘name‘]))
In [92]: a
Out[92]:
[{‘name‘: ‘董永‘, ‘age‘: 18},
 {‘name‘: ‘许仙‘, ‘age‘: 20},
 {‘name‘: ‘牛郎‘, ‘age‘: 23}]

技术分享图片

如果排序字段是数字类型,如果我们需要对该字段进行逆序排,也可以这么写:

a.sort(key=lambd x :(x[‘name‘], -x[‘age‘]))

以上是关于列表嵌套字典,根据字典某一key排序的主要内容,如果未能解决你的问题,请参考以下文章

Python字典字典列表嵌套字典排序

Python字典字典列表嵌套字典排序

Python字典嵌套字典排序,该怎么处理?

使用列表中的项目更改嵌套字典的字典中的值?

学不会的python之通过某几个关键字排序分组一个字典列表(列表中嵌套字典)

学不会的python之通过某几个关键字排序分组一个字典列表(列表中嵌套字典)