jjzjj

itemgetter

全部标签

python - 按多个属性对列表进行排序?

我有一个列表列表:[[12,'tall','blue',1],[2,'short','red',9],[4,'tall','blue',13]]如果我想按一个元素排序,比如高/短元素,我可以通过s=sorted(s,key=itemgetter(1))来实现。如果我想同时按高/短和颜色进行排序,我可以进行两次排序,每个元素一次,但是有更快的方法吗? 最佳答案 键可以是返回元组的函数:s=sorted(s,key=lambdax:(x[1],x[2]))或者你也可以使用itemgetter来达到同样的效果(这样更快并且避免了Pytho

python - 按多个属性对列表进行排序?

我有一个列表列表:[[12,'tall','blue',1],[2,'short','red',9],[4,'tall','blue',13]]如果我想按一个元素排序,比如高/短元素,我可以通过s=sorted(s,key=itemgetter(1))来实现。如果我想同时按高/短和颜色进行排序,我可以进行两次排序,每个元素一次,但是有更快的方法吗? 最佳答案 键可以是返回元组的函数:s=sorted(s,key=lambdax:(x[1],x[2]))或者你也可以使用itemgetter来达到同样的效果(这样更快并且避免了Pytho
12