列表嵌套字典,根据字典某一key排序
在返回列表嵌套字典时候,往往需要对数据进行一定的处理:
按照字典中某一个key排序
In [87]: a = [{"name": "牛郎", "age": 23},{"name":"许仙", "age": 20},{"name":"董永", "age": 18}]In [88]: aOut[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]: aOut[90]:[{'name': '牛郎', 'age': 23}, {'name': '董永', 'age': 18}, {'name': '许仙', 'age': 20}]In [91]: a.sort(key=lambda x:(x['age'], x['name']))In [92]: aOut[92]:[{'name': '董永', 'age': 18}, {'name': '许仙', 'age': 20}, {'name': '牛郎', 'age': 23}]
如果排序字段是数字类型,如果我们需要对该字段进行逆序排,也可以这么写:
a.sort(key=lambd x :(x['name'], -x['age']))
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。