Gab*_*iel 1 python sorting list
我有一个简单的列表,由几个子列表组成,如下所示:
a = [[4, 3, 2, 1], [5, 8, 7, 6], [12, 11, 10, 9]]
Run Code Online (Sandbox Code Playgroud)
我需要按照子列表a[1]中的元素按降序排序,所以它会像这样:
sorted_a = [(3, 2, 1, 4), (8, 7, 6, 5), (11, 10, 9, 12)]
Run Code Online (Sandbox Code Playgroud)
我尝试过使用sort:
sorted_a = sorted(a, key=lambda x: -x[2])
Run Code Online (Sandbox Code Playgroud)
但它返回:
[[12, 11, 10, 9], [5, 8, 7, 6], [4, 3, 2, 1]]
Run Code Online (Sandbox Code Playgroud)
这根本不是我需要的.
所以你真的想要对子列表进行排序?
zip(*sorted(zip(*a), key=lambda x: -x[1]))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1129 次 |
| 最近记录: |