我为一个简单的问题道歉,但我在档案中找不到答案。 我该怎么做才能在较大的列表中对较小的列表进行排序。 例如
lst=[[1, 2, 3, 4], [5,9,8,7], [9, 0, 1, 2, 3 ]]
应该返回
[1, 2, 3, 4]
[5,7,8,9]
[ 0, 1, 2, 3,9 ]
我尝试使用lambda
lst.sort(key=lambda x: x.min())
并排序
lst.sort(key=lambda x: sorted(x))
但都不起作用。你能指点我一下吗?感谢您的指导。
答案 0 :(得分:6)
保持简单,只需使用列表理解并对列表中的列表进行排序:
输出:
[[1, 2, 3, 4], [5, 7, 8, 9], [0, 1, 2, 3, 9]]
因此,关于您的代码,您可以这样做:
lst = [sorted(x) for x in lst]
答案 1 :(得分:1)
您可以使用列表推导对每个子列表进行排序,然后分配回主列表
sed
答案 2 :(得分:1)
您可以尝试这样的事情:
lst
我循环浏览{{1}}并对每个内部列表进行排序。
答案 3 :(得分:1)
你可以这样做:
price.blade.php
答案 4 :(得分:0)
你可以写一个函数:
def sort_lst(lst):
lists = []
for l in lists:
l = l[:]
l.sort()
lists.append(l)
return lists
或
l = [[1, 2, 3, 6], [1, 2, 5, 6]]
l.sort(key=lambda x: x.sort())
print(l)
Output: [[1, 2, 3, 6], [1, 2, 5, 6]]
答案 5 :(得分:0)
如果您想进行排序,可以执行以下操作:
override func viewDidLoad() {
super.viewDidLoad()
if let greenColoredViewController = tutorialPageViewController?.orderedViewControllers.first {
greenColoredViewController.label.text = "Hello world!"
}
}
(any(ll.sort() for ll in lst)
实际上只是放弃了返回值,这些值都是any
;它将返回None
。)