Skip to main content
 首页 » 编程设计

python之将一个列表的内容循环弹出到列表列表中

2025年05月04日21傻小

我有一个 list

main_list = [1,2,3,4,5,6,7,8,9,10,11,12] 

我想将列表分成多个列表,我想要如下所示的输出-

list1 = [1,9]     
list2 = [2,10]     
list3 = [3,11]     
list4 = [4,12]     
list5 = [5]     
list6 = [6]     
list7 = [7] 
list8 = [8] 

请您参考如下方法:

这可以使用 itertools.cycle 在几行中解决。

from itertools import cycle 
 
main_list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12] 
lists = [[] for _ in range(8)] 
 
for x, y in zip(cycle(lists), main_list): 
     x.append(y) 

复杂度:O(n)。


print(lists) 
[[1, 9], [2, 10], [3, 11], [4, 12], [5], [6], [7], [8]]