Python中按索引合并嵌套列表并追加常量值的实现问题
按索引合并嵌套列表并追加固定常量的实现方案(Python)
1. 按索引合并两个同结构嵌套列表
输入示例
L1 = [[1,2],[4,5]] L2 = [[11,22],[44,55]]
期望输出
[[[1,11],[2,22]], [[4,44],[5,55]]]
实现代码
通过嵌套的zip函数按索引逐层配对元素,配合列表推导式生成结果:
L3 = [[[a, b] for a, b in zip(sublist1, sublist2)] for sublist1, sublist2 in zip(L1, L2)]
2. 为所有最内层嵌套列表追加固定常量
期望输出(追加常量0后)
[[[1,11,0],[2,22,0]], [[4,44,0],[5,55,0]]]
实现代码
可以选择合并时直接追加,一步得到最终结果:
fixed_val = 0 L3 = [[[a, b, fixed_val] for a, b in zip(sublist1, sublist2)] for sublist1, sublist2 in zip(L1, L2)]
如果已经完成了第一步的合并,也可以单独遍历追加常量:
fixed_val = 0 for outer_sublist in L3: for inner_sublist in outer_sublist: inner_sublist.append(fixed_val)
注意事项
以上实现要求两个输入嵌套列表的层级结构、每层元素数量完全匹配,若存在结构不一致的场景,可额外添加长度校验逻辑避免报错。
内容的提问来源于stack exchange,提问作者Blazkowicz 88
相关产品推荐
相关产品推荐

