按照多个关联键比较规则对每行元素进行排序
创始人
2024-08-23 19:30:17
0

可以使用Python的sorted()函数来对每行的元素进行排序。该函数可以接受一个关键字参数key,用来指定排序规则。

假设有如下一个二维数组:

a = [
    {'name': 'Tom', 'age': 30},
    {'name': 'Alice', 'age': 25},
    {'name': 'Bob', 'age': 35}
]

如果要按照年龄和姓名的顺序对每个字典进行排序,则可以使用如下代码:

def sort_by_age_and_name(lst):
    return sorted(lst, key=lambda x: (x['age'], x['name']))

a_sorted = [sort_by_age_and_name(row) for row in a]

其中,lambda函数会把每个字典作为参数传递进来,然后按照'(age, name)'的形式返回这两个关键字对应的值。sorted()函数会根据返回的元组进行排序,即先按照年龄排序,对于年龄相同的元素再按照姓名排序。

最后,a_sorted会得到以下结果:

[
    [{'name': 'Alice', 'age': 25}, {'name': 'Tom', 'age': 30}, {'name': 'Bob', 'age': 35}],
    [{'name': 'Alice', 'age': 25}, {'name': 'Tom', 'age': 30}, {'name': 'Bob', 'age': 35}],
    [{'name': 'Alice', 'age': 25}, {'name': 'Tom', 'age': 30}, {'name': 'Bob', 'age': 35}]
]

相关内容

热门资讯

六分钟技巧!雀神训练秘籍,微扑... 六分钟技巧!雀神训练秘籍,微扑克wpk安全(详细透视辅助工具教程)1、这是跨平台的雀神训练秘籍黑科技...
6分钟介绍!中至九江有辅助工具... 6分钟介绍!中至九江有辅助工具吗,红龙扑克辅助工具(详细透视辅助插件教程);中至九江有辅助工具吗简单...
三分钟黑科技!葫芦娃手游吗,p... 葫芦娃手游吗赢率提升策略‌;三分钟黑科技!葫芦娃手游吗,pokerx人工智能(详细透视辅助脚本教程)...
五分钟方法!闲来跑胡子必胜神器... 五分钟方法!闲来跑胡子必胜神器,aa扑克发牌机制(详细透视辅助插件教程);玩家必备必赢加哟《1367...
五分钟辅助挂!大齐山东麻将有没... 您好,大齐山东麻将有没有挂这款游戏可以开挂的,确实是有挂的,需要了解加微【136704302】很多玩...
6分钟教学!越乡游斗牛怎么开挂... 6分钟教学!越乡游斗牛怎么开挂,德州可能有外 挂(详细透视辅助脚本教程)1、很好的工具软件,可以解锁...
6分钟介绍!玉海楼茶苑十三输赢... 6分钟介绍!玉海楼茶苑十三输赢有没有规律,微扑克有挂(详细透视辅助插件教程);《WPK辅助透视》‌:...
六分钟教学!微信随意玩9人拼三... 《微信随意玩9人拼三张辅助器软件透明挂》是一款多人竞技的微信随意玩9人拼三张辅助器辅助透视游戏,你将...
八分钟方法!小白大作战有没有挂... 八分钟方法!小白大作战有没有挂,wepooke系统规律(详细透视辅助工具教程);(需添加指定薇757...
3分钟攻略!爱摩罗麻将有挂吗,... 3分钟攻略!爱摩罗麻将有挂吗,红龙扑克有作假(详细透视辅助插件教程)是一款可以让一直输的玩家,快速成...