复制并插入嵌套列表Python

时间:2017-04-12 13:54:09

标签: python list nested

我目前有嵌套列表:

A = [[a1, a2, a3], c1, [a4, a5, a6], c2]

我还有另一个清单:

B = [b1, b2]

我希望通过B中的元素数复制A,然后按以下方式插入列表B:

AB = [[a1, a2, a3], b1, c1, [a4, a5, a6], b1, c2, [a1, a2, a3], b2, c1, [a4, a5, a6], b2, c2]

我设法复制的重复:

AB = A * len(B)

但是,将列表插入嵌套列表让我完全陷入困境。

我目前正在使用Python 3.6.1,列表A和B的大小可以更改,但始终采用以下格式:

A template = [[x1, x2, x3], z1 ...]
B template = [y1, ...]

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:2)

您可以通过简单的方式完成。

A = [['a1', 'a2', 'a3'], 'c1', ['a4', 'a5', 'a6'], 'c2']

AB=[]

B = ['b1', 'b2']
for i in B:
    for j in A:
        if isinstance(j,list):
            AB.append(j)
        else:
            AB.append(i)
            AB.append(j)
print AB

输出:[['a1', 'a2', 'a3'], 'b1', 'c1', ['a4', 'a5', 'a6'], 'b1', 'c2', ['a1', 'a2', 'a3'], 'b2', 'c1', ['a4', 'a5', 'a6'], 'b2', 'c2']