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

如何将列表元素依次插入嵌套列表对应子列表的首位?

嵌套列表元素插入实现

需求:将一个列表的元素依次插入到嵌套列表对应子列表的首位——第一个元素插入第一个子列表开头,第二个元素插入第二个子列表开头,以此类推。

示例代码(修正语法错误后)

# 原输入(修正语法错误)
lst_of_lst = [[1,2,3,4], [5,6,7,8], [9,10,11,12], [13,14,15,16]]
items = ['a','b','c','d']

# 期望输出
# [['a',1,2,3,4], ['b',5,6,7,8], ['c',9,10,11,12], ['d',13,14,15,16]]

实现方法

方法1:原地修改原嵌套列表

通过循环遍历索引,使用列表的insert()方法在子列表首位插入对应元素:

lst_of_lst = [[1,2,3,4], [5,6,7,8], [9,10,11,12], [13,14,15,16]]
items = ['a','b','c','d']

for idx in range(len(lst_of_lst)):
    lst_of_lst[idx].insert(0, items[idx])

print(lst_of_lst)

方法2:生成新嵌套列表(不修改原列表)

使用列表推导式结合zip(),将每个元素与对应子列表拼接,生成新列表:

lst_of_lst = [[1,2,3,4], [5,6,7,8], [9,10,11,12], [13,14,15,16]]
items = ['a','b','c','d']

new_lst_of_lst = [[item] + sublist for item, sublist in zip(items, lst_of_lst)]

print(new_lst_of_lst)

注意事项

  • 确保两个列表长度一致,否则方法1会出现索引越界错误;方法2会自动以较短列表的长度为准,忽略超出部分的元素。
  • 如果需要处理长度不一致的场景,可在方法1中改用range(min(len(lst_of_lst), len(items)))控制循环范围。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.24 17:18:22