📅  最后修改于: 2023-12-03 15:19:20.259000             🧑  作者: Mango
在Python中,可以使用sorted()
函数和lambda表达式来按照子列表的大小对列表列表进行排序。
下面是一个例子,首先创建一个包含多个子列表的列表list_of_lists
。然后使用sorted()
函数和lambda表达式,按照每个子列表的长度排序,将结果存储在sorted_list_of_lists
中。最后将结果打印出来。
# 创建一个列表列表,即包含多个子列表的列表
list_of_lists = [[1, 2, 3], [4, 5], [6, 7, 8, 9], [10, 11, 12], [13], [14, 15, 16, 17]]
# 使用sorted()函数和lambda表达式按子列表的大小对list_of_lists进行排序
sorted_list_of_lists = sorted(list_of_lists, key=lambda x: len(x))
# 打印排序结果
print(sorted_list_of_lists)
运行结果:
[[13], [4, 5], [1, 2, 3], [10, 11, 12], [6, 7, 8, 9], [14, 15, 16, 17]]
在lambda表达式中,我们使用len(x)
作为sorted()
函数的key
参数的值,这样就可以按子列表的大小来排序。len(x)
表示计算列表x的长度。
可以看到,运行结果显示排好序的子列表。即使列表中有相同长度的子列表,它们也按相同的顺序排列。
这里还要注意的一点是lambda表达式一般用于简单的函数。如果需要更复杂的函数,可以使用Python中的def
语句来定义该函数。
以上就是Python中按子列表的大小对列表列表进行排序的方法。