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

如何向嵌套列表(list of lists)的每隔第n个位置插入指定元素?

当然可以实现这个需求!下面给你两种实用的Python实现方式,完美适配你的嵌套列表结构:

解决方案

方法1:直观的循环实现

这种方式可读性极强,适合刚接触Python的朋友理解逻辑:

original_list = [[45.0, 58.0, 45.0, 520.0], [45.0, 58.0, 754.0, 58.0], [302.0, 58.0, 302.0, 520.0], [563.0, 58.0, 563.0, 520.0], [626.0, 58.0, 626.0, 257.0], [754.0, 58.0, 754.0, 321.0], [563.0, 159.0, 754.0, 159.0], [626.0, 257.0, 754.0, 257.0], [45.0, 260.0, 110.0, 260.0], [302.0, 260.0, 563.0, 260.0], [629.0, 321.0, 629.0, 520.0], [45.0, 520.0, 629.0, 520.0], [110.0, 58.0, 110.0, 322.0], [45.0, 129.0, 110.0, 129.0], [45.0, 322.0, 302.0, 322.0], [563.0, 321.0, 754.0, 321.0], [299.0, 520.0, 299.0, 581.0], [299.0, 581.0, 562.0, 581.0], [562.0, 520.0, 562.0, 581.0], [563.0, 450.0, 629.0, 450.0]]

processed_list = []
for sublist in original_list:
    new_sublist = []
    # 每两个元素为一组遍历子列表
    for i in range(0, len(sublist), 2):
        # 添加当前组的两个元素,再插入元素2
        new_sublist.extend([sublist[i], sublist[i+1], 2])
    processed_list.append(new_sublist)

方法2:简洁的列表推导式

如果喜欢更紧凑的代码风格,用嵌套列表推导式可以一行搞定:

original_list = [[45.0, 58.0, 45.0, 520.0], [45.0, 58.0, 754.0, 58.0], ...]  # 代入你的完整列表

processed_list = [
    [item for pair in zip(sublist[::2], sublist[1::2]) for item in pair + (2,)]
    for sublist in original_list
]

处理后的结果示例

处理后的列表前几个元素完全匹配你给出的示例:

[
 [45.0, 58.0, 2, 45.0, 520.0, 2],
 [45.0, 58.0, 2, 754.0, 58.0, 2],
 [302.0, 58.0, 2, 302.0, 520.0, 2],
 [563.0, 58.0, 2, 563.0, 520.0, 2],
 ...  # 剩余元素均按相同规则处理
]

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.08 22:02:49