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

如何用itertools.product()实现多列表字符串元素全组合拼接?

多列表字符串数字全组合拼接实现方案

itertools.product()完全可以满足你的需求,你没成功应该是没处理好笛卡尔积结果的拼接步骤。直接调用product会返回元组的迭代器,只需把每个元组内的字符串元素拼接即可得到目标结果。

代码示例

import itertools

# 示例列表(可扩展至100个)
list_a = ['8', '0', '9', '5', '7']
list_b = ['8', '0', '9', '5', '7']
list_c = ['1', '3']

# 把所有待组合的列表存入一个集合
all_lists = [list_a, list_b, list_c]

# 生成全组合并拼接字符串
result = [''.join(tuple_item) for tuple_item in itertools.product(*all_lists)]

# 输出结果示例:['881', '883', '801', '803', ...]
print(result)

关键说明

  • itertools.product(*all_lists)中的*是解包操作,能把all_lists里的每个列表作为独立参数传入product,不管你有多少个列表(哪怕100个)都能正常处理。
  • ''.join(tuple_item)负责把product返回的每个元组(比如('8','0','3'))拼接成完整的字符串'803'。

如果你的列表是动态生成的(比如从文件或接口获取100个列表),只需把所有列表存入all_lists即可,无需修改核心逻辑。

内容的提问来源于stack exchange,提问作者артем костриков

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.28 10:27:39