【发布时间】:2018-12-22 08:33:54
【问题描述】:
假设我在一个列表中有一个列表,它包含在一个列表中。例如:
foo = [[[2, 2, 2], [1, 1, 1], [3, 3, 3]], [[2, 2, 2], [1, 1, 1], [3, 3, 3]]]
我想按顺序排序:
foo = [[[1, 1, 1], [2, 2, 2], [3, 3, 3]], [[1, 1, 1], [2, 2, 2], [3, 3, 3]]]
我可以使用[sorted(i) for i in foo] 来实现这一点。但是,是否有某种方法可以在没有列表理解(或创建新列表)的情况下对该列表进行排序?
列表本身的值会改变,但不需要排序。
我所尝试的一切都归结为与上述相同的方法。
【问题讨论】:
-
如果你真的需要这样做,你可能应该使用多索引熊猫数据帧
-
Pandas 似乎完全是矫枉过正,所以使用列表理解可能会更好,如果该方法是最好的替代方法@Nickpick
-
for i in range(len(foo)): foo[i].sort()发生了什么? -
列表理解到底有什么问题?您也可以使用
sort方法对外部列表中的每个列表进行排序。 -
@RoryDaulton 确实,没什么,但是我对不创建全新列表的替代方案感兴趣。
标签: python python-3.x list sorting