在Python中,合并两个列表可以通过多种高效且灵活的方法实现,最常用的包括+
运算符、extend()
方法、zip()
交叉合并、列表推导式以及itertools.chain()
。这些方法各有适用场景,例如简单拼接、原地扩展或高性能批量合并,开发者可根据需求选择最优方案。
-
+
运算符:直接连接两个列表生成新列表,代码简洁但效率较低,适合少量数据。示例:python复制
list1 = [1, 2, 3] list2 = [4, 5, 6] merged_list = list1 + list2 # 输出:[1, 2, 3, 4, 5, 6]
-
extend()
方法:将一个列表的元素追加到另一个列表末尾,直接修改原列表而非创建新对象。示例:python复制
list1.extend(list2) # list1变为[1, 2, 3, 4, 5, 6]
-
zip()
交叉合并:将两个列表的对应位置元素交叉合并,适用于需要交错排列的场景。示例:python复制
merged_list = [item for pair in zip(list1, list2) for item in pair] # 输出:[1, 4, 2, 5, 3, 6]
-
列表推导式:通过嵌套循环合并多个列表,灵活且高效。示例:
python复制
merged_list = [item for sublist in [list1, list2] for item in sublist]
-
itertools.chain()
:适合合并大量列表,性能最优。需导入标准库itertools
。示例:python复制
from itertools import chain merged_list = list(chain(list1, list2))
总结:根据场景选择方法——简单拼接用+
,原地修改用extend()
,复杂需求可优先考虑itertools.chain()
或列表推导式。合理运用这些技巧能显著提升代码效率和可读性。