我有两张这样的单子
lst1 = [["a","b"],[1,2,3],[7,8,9,10,11]]
lst2 = [["c","d"],[4,5,6],[12,13,14,15,16]]
我正在尝试实现这样的目标输出:
[["a","b","c","d"],[1,2,4,5],[2,3,5,6],[7,8,12,13],[8,9,13,14],[9,10,14,15],[10,11,15,16]]
编辑:
很抱歉没有包括我到现在为止所做的尝试。你知道吗
test = list(zip(lst1,lst2))
test2 = [item for sublist in test for items in sublist for item in items]
def split(lst, size = 1):
lsts = []
while len(lst) > size:
piece = lst[:size]
lsts.append(piece)
lst = lst[size:]
lsts.append(lst)
return lsts
print (split(test2, 4))
# prints this
[['a', 'b', 'c', 'd'], [1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12], [13, 14, 15, 16]]
在这里,假设列表的格式正确,即所有子列表的长度与另一个数组中的等效子列表的长度相同。你知道吗
输出:
您可以使用稍微复杂的列表理解和} 的助手函数来实现这一点:
itertools
菜谱中名为^{相关问题 更多 >
编程相关推荐