如何合并长度不相同的多个2d列表?

时间:2020-06-05 17:10:12

标签: python-3.x multidimensional-array

早上好,我试图将两个或多个长度不相同的2d列表合并在一起。 例如,在下面的示例中,我有两个不同的多维列表,它们的长度不同。

A=[[1,2,3],[4,7,19]]
B=[[2,4], [3],[5,7,9]]

如果可能的话,我将使用什么代码来获得以下结果。

C=[[[1,2,3,2,4],[1,2,3,3],[1,2,3,5,7,9]],[[4,7,19,2,4],[4,7,19,3],[4,7,19,5,7,9]]]

1 个答案:

答案 0 :(得分:1)

使用嵌套的list comprehension

>>> [[a + b for b in B] for a in A]
[[[1, 2, 3, 2, 4], [1, 2, 3, 3], [1, 2, 3, 5, 7, 9]], [[4, 7, 19, 2, 4], [4, 7, 19, 3], [4, 7, 19, 5, 7, 9]]]

ab分别是AB的子列表。理解将A的第一个成员放在外部for a in A中,并遍历B的每个子列表,依次将每个成员添加到a中。然后选择a中的下一个A,并且该过程一直重复,直到没有其他A成员为止。

相关问题