python 字典数组多次排序请教

python 字典数组多次排序请教

[{name:'小明',age:18}]
这样写只能排序一次, 比如我要 先以字段 name ,  再以字段 age 排序,怎么弄
member_list = sorted(member_arr, key=lambda item: item['name '], reverse=False)
上面句语多来几次当然也可以,只是.....

另外请都 python 有什么 类似于 lodash 的库

lambda返回要参与排序的字典元组,会依次按照出现循序排列
key=lambda person: (person['name'], -person['age'], -person['height'])
默认升序,‘-’表示降序;
按名称升序排序,名称相同的,则按年龄降序排序,年龄相同的,再按身高降序排序

可以使用 Python 的 sorted() 函数来进行多字段排序。

下面是一个例子,展示了如何先按照名字排序,然后按照年龄排序:

member_list = [{'name': '小明', 'age': 18},
               {'name': '小红', 'age': 20},
               {'name': '小刚', 'age': 19},
               {'name': '小张', 'age': 20}]

# 先按照名字排序,再按照年龄排序
sorted_list = sorted(member_list, key=lambda x: (x['name'], x['age']))

print(sorted_list)  # 输出:[{'name': '小刚', 'age': 19}, {'name': '小明', 'age': 18}, {'name': '小红', 'age': 20}, {'name': '小张', 'age': 20}]

在排序时,Python 会先按照第一个元素排序,如果第一个元素相同,则会按照第二个元素排序,以此类推。

您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632