我有一个 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]]
