Python如何将两个等长整数列表按序交替拼接得到指定结果
实现方案
可以通过Python内置函数快速实现该需求,核心逻辑是按索引配对两个列表的元素后展开为一维列表。
基础实现(无需额外依赖)
def merge_lists(list_b, list_a): # 逐位配对两个列表的元素后展开 return [element for pair in zip(list_b, list_a) for element in pair]
调用测试
A = [1, 2, 3] B = [4, 5, 6] C = merge_lists(B, A) print(C) # 输出结果:[4, 1, 5, 2, 6, 3]
简化写法(基于itertools)
如果允许引入标准库,可以用chain.from_iterable简化展开逻辑:
from itertools import chain def merge_lists(list_b, list_a): return list(chain.from_iterable(zip(list_b, list_a)))
两种实现均默认输入的两个列表长度相等,完全匹配你给出的输出要求。
内容的提问来源于stack exchange,提问作者Nora Holiday
相关产品推荐
相关产品推荐

