我需要根据元素的长度对列表进行排序,然后根据内容进行排序。
例如,输入 [[1,2,3,4],[1,2,3],[2,3,4]]
,我需要得到 [[ 1,2,3,4],[2,3,4],[1,2,3]]
:[1,2,3,4]元素最大,然后是[2,3 ,4] 的第一个元素大于 [1,2,3]。输入 [[2,3,5],[1,2,3],[2,3,4]]
, [[2,3,5],[2 ,3,4],[1,2,3]]
当元素长度相同时,应该逐个元素比较返回。
我可以很容易地按元素的长度对列表进行排序,但是在那之后我该如何求助呢?
>>> a = [[1,2,3,4],[1,2,3],[2,3,4]]
>>> sorted(a, key=len, reverse=True)
[[1, 2, 3, 4], [1, 2, 3], [2, 3, 4]]
最佳答案
不要。排序一次。
key=lambda a: (-len(a), a)
关于python - 根据长度排序python列表,然后根据内容排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22900745/