Skip to main content
 首页 » 编程设计

Python 列表排序难题

2025年05月04日14freeliver54

我有一个不寻常的列表排序问题,我正在努力寻找一种简洁有效的解决方法。问题如下:我有一个名为索引的列表,该列表中的每个项目都对应于第二个列表数据的索引。因此,例如,索引中的第一个数字为零,对应于列表数据中的第一项,即 1,索引中的 3 对应于列表数据中的 6,因为 6 是列表数据中的第三项 [< em>包括第0项]..

现在我想组织列表数据,以便它们在索引之间分组,如下所示:

indexes = [ 0, 3, 6, 8, 12, 13] 
 
data = [1, 2, 5, 6, 11, 13, 15, 23, 35, 36, 38, 41, 46] 

解决方法:

organised_data = [ [1,2,5], [6,11,13], [15,23], [35,36,38,41], [46] ] 

我从事这项工作已有多年。

请您参考如下方法:

您可以在列表理解中的连续索引之间使用切片

>>> [data[indexes[i]:indexes[i+1]] for i in range(len(indexes)-1)] 
[[1, 2, 5], [6, 11, 13], [15, 23], [35, 36, 38, 41], [46]]