我有两个列表:
a = [1, 2, 3, 4]
b = [5, 6, 7, 8]
我需要这样的东西:
c = [1, 5, 2, 6, 3, 7, 4, 8]
我使用这个解决方案:
c = list(reduce(lambda x, y: x + y, zip(a, b)))
有更好的方法吗?
最佳答案
使用列表理解:
>>> [x for tup in zip(a, b) for x in tup]
[1, 5, 2, 6, 3, 7, 4, 8]
上面的嵌套列表推导等同于下面的嵌套 for 循环(以防你感到困惑):
result = []
for tup in zip(a, b):
for x in tup:
result.append(x)
关于Python 两个列表列表随机播放,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17993008/