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

如何合并Python列表中的子列表与元素,生成层级字符串序列?

嵌套列表层级组合实现方法

给定嵌套列表:

my_list = [1, [2, 3], [4, 5]]

需要生成层级式的字符串组合列表,预期结果为:

['1', '1.2', '1.3', '1.2.4', '1.2.5', '1.3.4', '1.3.5']

实现思路

把第一个元素作为根节点,后续子列表依次作为下一级节点,从根节点开始逐层向下拼接:

  1. 初始结果包含根节点的字符串形式
  2. 依次处理每个子列表,将当前层级的所有节点与子列表中的元素拼接,生成下一级节点
  3. 把生成的新节点同时加入结果列表和下一轮迭代的节点集合

代码实现

my_list = [1, [2, 3], [4, 5]]

# 提取根节点和后续层级的子列表
root_str = str(my_list[0])
levels = my_list[1:]

result = [root_str]
current_level_nodes = [root_str]

for level in levels:
    next_level_nodes = []
    for node in current_level_nodes:
        for num in level:
            combined_str = f"{node}.{num}"
            next_level_nodes.append(combined_str)
            result.append(combined_str)
    # 更新当前节点集合为下一层级,用于后续拼接
    current_level_nodes = next_level_nodes

print(result)

代码说明

  • root_str:将第一个元素转为字符串作为根节点,是所有组合的基础
  • result:存储最终所有层级的组合字符串,初始仅包含根节点
  • current_level_nodes:记录当前需要向下拼接的节点,每处理完一个层级就更新为新生成的节点
  • 遍历每个层级子列表时,对每个当前节点,和子列表中的每个数字拼接成新字符串,既加入结果列表,也加入下一层级的节点集合,确保后续层级能基于当前节点继续拼接

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.05 04:40:55