python - 按 "column"的字母顺序对python中的列表列表进行排序

标签 python list sorting lambda 2d

我有一个二维字符列表

 [['J', 'A', 'M', 'E', 'S'],
 ['F', 'C', 'A', 'A', 'A'],
 ['F', 'A', 'B', 'B', 'B']]

按字母顺序对第一个列表进行排序的最佳方法是什么,后续列表如下,即:

[['A', 'E', 'J', 'M', 'S'],
['C', 'A', 'F', 'A', 'A'],
['A', 'B', 'F', 'B', 'B']]

最佳答案

您可以使用 zip() :

>>> [list(t) for t in zip(*sorted(zip(*s)))]
[['A', 'E', 'J', 'M', 'S'], ['C', 'A', 'F', 'A', 'A'], ['A', 'B', 'F', 'B', 'B']]

s 是您的列表列表。

关于python - 按 "column"的字母顺序对python中的列表列表进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21054748/

相关文章:

java - 如何测量 for 循环的执行时间?

Python 负列表索引包装为切片

javascript - 选择框以更改网址

python - 为什么我的渲染图像没有显示我期望使用 gluLookAt 看到的 View ?

python - 圆形 Pandas 数据框/系列

python - pyinstaller 没有为树莓派预定义的编译器

c# - 在 DataGrid 中显示数据行列表

python - 如何删除列表中非空白元素之间的空白元素?

javascript - 基于虚线键父值从平面数组创建关联数组

java - 在选择排序中的每次遍历中查找数组中的最小值和最大值