合并两个列表遵循某些模式

ump*_*a__ 0 python

我有两个清单:

a = ['a', 'b', 'c', 'd']
b = ['e', 'f', 'g', 'h']
Run Code Online (Sandbox Code Playgroud)

我想合并到一个包含元素nr的列表.列表a中的第1个作为第一个元素,列表b的元素nr.1作为第二个元素,元素nr.列表中的2个作为第三个元素,依此类推,如下所示:

c = ['a', 'e', 'b', 'f', 'c', 'g', 'd', 'h']
Run Code Online (Sandbox Code Playgroud)

最简单的方法是什么,可能不使用循环?

awe*_*oon 6

只需将zip它们成对,然后使用itertools.chain.from_iterable以下方法展平列表:

In [1]: a=['a','b','c','d']

In [2]: b=['e','f','g','h']

In [3]: from itertools import chain

In [4]: chain.from_iterable(zip(a, b))
Out[4]: <itertools.chain at 0x7fbcf2335ef0>

In [5]: list(chain.from_iterable(zip(a, b)))
Out[5]: ['a', 'e', 'b', 'f', 'c', 'g', 'd', 'h']
Run Code Online (Sandbox Code Playgroud)