【发布时间】:2018-04-26 04:52:41
【问题描述】:
我有一个问题:
我有 2 个列表:
list_1 = [1, 2, 3]
list_2 = [4, 5, 6]
我想合并它们以获得以下结果:
mergedlist = [1, 4, 2, 5, 3, 6]
我该怎么做?
【问题讨论】:
标签: python-3.x list merge
我有一个问题:
我有 2 个列表:
list_1 = [1, 2, 3]
list_2 = [4, 5, 6]
我想合并它们以获得以下结果:
mergedlist = [1, 4, 2, 5, 3, 6]
我该怎么做?
【问题讨论】:
标签: python-3.x list merge
像这样:
mergedlist = list_1 + list_2
如果您想要mergedlist 中的特定订单:
mergedlist = []
for i, entry in enumerate(list_1):
mergedlist.extend([entry, list_2[i]])
【讨论】:
您可以使用迭代工具中的链:
list_1 = [1, 2, 3]
list_2 = [4, 5, 6]
from itertools import chain
res = list(chain.from_iterable((list_1[x], list_2[x]) for x in range(len(list_1))))
=> [1, 4, 2, 5, 3, 6]
【讨论】:
zip(list_1, list_2) 也可以
在我看来,最 Pythonic 的方式是:
merged_list = [item for pair in zip(list_1, list_2) for item in pair]
或者,您也可以使用collections.chain:
merged_list = list(chain.from_iterable(zip(list_1, list_2)))
【讨论】: