如何明智地连接多个列表元素

Thi*_*H S 3 python list concatenation python-2.7 python-3.x

输入:

l1 = ['a', '', '', '']
l2 = ['', 'b', '', '']
l3 = ['', '', 'c', '']
l4 = ['', '', '', 'd']
Run Code Online (Sandbox Code Playgroud)

预期产量:

['a', 'b', 'c', 'd']
Run Code Online (Sandbox Code Playgroud)

我试过了

list(map(str.__add__, l1, l2, l3, l4))

看起来str.__add__不接受两个以上的列表对象.

任何解决方法?

编辑:基于Jim Fasarakis-Hilliard的评论.

l1 = ['a', '1', '', '']
l2 = ['', 'b', '2', '']
l3 = ['', '', 'c', '']
l4 = ['', '', '', 'd']
Run Code Online (Sandbox Code Playgroud)

预期产量:

['a', '1b', '2c', 'd']
Run Code Online (Sandbox Code Playgroud)

谢谢

Psi*_*dom 10

好像你需要的 zip

[''.join(x) for x in zip(l1, l2, l3, l4)]
# ['a', 'b', 'c', 'd']
Run Code Online (Sandbox Code Playgroud)

对于更新的输入:

[''.join(x) for x in zip(l1, l2, l3, l4)]
# ['a', '1b', '2c', 'd']
Run Code Online (Sandbox Code Playgroud)