如何在Python列表的两个元素之间插入指定元素?
解决方案
Python列表内置了insert()方法,可直接实现在指定索引位置插入元素的需求,不需要手动编写元素移位的逻辑。
方法说明
list.insert(插入位置索引, 待插入元素)
- 列表索引从0开始计数,插入完成后,原索引位置及之后的所有元素会自动后移一位。
- 若传入的索引大于等于列表总长度,元素会自动追加到列表末尾,不会抛出索引异常。
你的场景适配代码
mylist = [10, 15, 17, 18] # 要在10(索引0)和15(索引1)之间插入12,直接传入索引1即可 mylist.insert(1, 12) print(mylist) # 输出结果:[10, 12, 15, 17, 18]
优势
对比你自己实现的移位逻辑,insert()有两个明显优势:
- 语法简洁易读,嵌入复杂代码中也不会造成逻辑混乱
- 属于Python底层C实现的内置方法,执行效率远高于手写Python循环做移位的实现
批量插入扩展
如果你需要一次性插入多个元素,可以用列表切片赋值实现,不需要多次调用insert():
mylist = [10, 15, 17, 18] # 在索引1的位置批量插入12、13两个元素 mylist[1:1] = [12, 13] print(mylist) # 输出结果:[10, 12, 13, 15, 17, 18]
内容的提问来源于stack exchange,提问作者Beastboy3108
相关产品推荐
相关产品推荐

