语法 - Python如何给sorted里的key动态的传参数
本文介绍了语法 - Python如何给sorted里的key动态的传参数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
def sort():
return sorted(a,key=lambda x:(x['name'],x['age']),reverse=True)
就是说如果我传name就按name排序,如果传name和age就按照这两个key双重排序,如果传了三个key以此类推
解决方案
一楼的答案是有问题的,虽然不会报错,但是并没有起到排序的效果
下面附验证后的可行方法:
def sort(a, args):
return sorted(a, key=lambda x: tuple(x[i] for i in args), reverse=True)
dic_sorted = sort(lst, ['time', 'id', 'type'])
args接受的是一个列表
这篇关于语法 - Python如何给sorted里的key动态的传参数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文