Python 3.x 对具有不同子列表长度的列表进行排序

Python 3.x 对具有不同子列表长度的列表进行排序,python-3.x,Python 3.x,是否可以对具有不同子列表长度的列表进行排序? 我浏览了一些关于列表排序的链接;但他们都假设列表将有相同长度的子列表。 但是,在我的例子中,我想知道是否可以对可变长度子列表进行排序 例如: list_of_lists = [ [3, 2], [1, 3, 4], [1, 0, 1, 4], [0] ] 排序后,我应该有一个新的列表,如 sorted_list = [ [0], [1, 0, 1, 4], [1, 3, 4], [3, 2] ] 我可以在排序时指定多个键,但这仅在子列表

是否可以对具有不同子列表长度的列表进行排序? 我浏览了一些关于列表排序的链接;但他们都假设列表将有相同长度的子列表。 但是,在我的例子中,我想知道是否可以对可变长度子列表进行排序

例如:

    list_of_lists = [ [3, 2], [1, 3, 4], [1, 0, 1, 4], [0] ]
排序后,我应该有一个新的列表,如

 sorted_list = [ [0], [1, 0, 1, 4], [1, 3, 4], [3, 2] ]
我可以在排序时指定多个键,但这仅在子列表长度相同时有效

编辑: 我没有意识到,直接将列表传递给“sorted”将以预期的方式对给定的整数列表进行排序。感谢@jornsharpe的指点

但是,我的列表包含特定格式的字符串列表。 例如:

我想根据整数值(如果存在)对上面的列表进行排序


您希望列表如何排序?您尝试应用的逻辑是什么?例如,
sorted([[3,2],[1,3,4],[1,0,1,4],[0]])
在没有任何帮助的情况下工作。@KevinYobeth我希望根据相应位置的整数值(从索引0开始)对它们进行排序@jornsharpe很抱歉,我没有提到问题中的一些细节,因为我没有意识到简单的整数子列表可以直接使用您提到的排序。在我的例子中,列表不包含整数列表;而是以下格式的字符串。列表中的列表=['a']、['abc:10'、['def:20']、['abc:1'、['def:30'、'ab:2']、['abc:0']]应根据子列表项上的整数值进行排序。排序列表=['a'],['abc:0'],['abc:1','def:30','ab:2'],['abc:10','def:20']]然后是问题。但基本上,答案是编写一个
函数,该函数提供您想要的排序方式,请参见。在您的情况下,可能是
['a']
->
[]
['abc:10','def:20']
->
[10,20]
?然后将任务分解成更小的任务,并解决每一个任务,因为它对于您的用例来说太具体了,所以没有用处。
list_of_lists  = [
        ['a/s/e/e.c:Show:', 'a/s/e/e.c:INDX:3055'],
        ['a/s/e/e.c:Show:', 'a/s/e/e.c:display:3026','a/s/e/e.c:Struct:2905'],
        ['a/s/e/e.c:Show:', 'a/s/e/e.c:CODE:3056'],
        ['a/s/e/e.c:Show:', 'a/s/e/e.c:display:3026', 'a/s/e/e.c:INDEX:2925'],
        ['a/s/e/e.c:Show:', 'a/s/e/e.c:display:3026', 'a/s/e/e.c:Index:2921'],
        ['a/s/e/e.Show:', 'a/s/e/e.c:display:3026', 'a/s/e/e.c:Name:2917']
]
Sorted list = [
        ['a/s/e/e.c:Show:', 'a/s/e/e.c:display:3026', 'a/s/e/e.c:Struct:2905'],
        ['a/s/e/e.Show:', 'a/s/e/e.c:display:3026', 'a/s/e/e.c:Name:2917'],
        ['a/s/e/e.c:Show:', 'a/s/e/e.c:display:3026', 'a/s/e/e.c:Index:2921'],
        ['a/s/e/e.c:Show:', 'a/s/e/e.c:display:3026', 'a/s/e/e.c:INDEX:2925'],
        ['a/s/e/e.c:Show:', 'a/s/e/e.c:INDX:3055'],
        ['a/s/e/e.c:Show:', 'a/s/e/e.c:CODE:3056']
]