You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Python实现两个列表的交替合并?

问题描述

现有两个列表:

ListA =['AB' , 'EF']
ListB = ['CD', 'GH']

需要得到第三个列表,格式如下:

ListC =['AB', 'CD', 'EF', 'GH']

请问如何用Python实现该需求?

实现方法

这里需要将两个等长列表的元素交替合并,可以用以下几种实用方式实现:

方法一:列表推导式结合zip

zip会把两个列表对应位置的元素打包成元组,再通过嵌套列表推导式展开每个元组的元素:

ListA = ['AB', 'EF']
ListB = ['CD', 'GH']
ListC = [item for pair in zip(ListA, ListB) for item in pair]
print(ListC)  # 输出: ['AB', 'CD', 'EF', 'GH']

方法二:手动循环添加

如果需要更直观的逻辑,直接通过循环逐个添加对应元素:

ListA = ['AB', 'EF']
ListB = ['CD', 'GH']
ListC = []
for a, b in zip(ListA, ListB):
    ListC.append(a)
    ListC.append(b)
print(ListC)  # 输出: ['AB', 'CD', 'EF', 'GH']

方法三:借助itertools.chain

用itertools模块的chain.from_iterable展开打包后的元素,适合处理更长的列表场景:

from itertools import chain

ListA = ['AB', 'EF']
ListB = ['CD', 'GH']
ListC = list(chain.from_iterable(zip(ListA, ListB)))
print(ListC)  # 输出: ['AB', 'CD', 'EF', 'GH']

注意:以上方法默认两个列表长度相同;若列表长度不一致,zip只会处理到较短列表的长度,需额外判断调整逻辑。

内容的提问来源于stack exchange,提问作者Saurjayan Bhattacharjee

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 21:36:34