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

如何删除数组中每个子列表的第4个元素

解决方法

你得搞清楚:直接对父数组用pop(3)或者del操作,改的是整个数组里的子列表(也就是删掉第4个子列表),而不是每个子列表里的元素。你需要逐个遍历每个子列表,单独处理每个子列表里的元素。

下面给你几种Python里常用的实现方式:

方法1:列表推导式(简洁高效)

直接生成新数组,每个子列表只保留前3个元素:

original_array = [[1,2,3,4], [5,6,7,8], [9,10,11,12]]
new_array = [sublist[:3] for sublist in original_array]

这种方式不会改动原数组,直接得到你要的结果。

方法2:原地修改原数组

如果想直接改原数组而不是生成新的,可以循环遍历每个子列表,对每个子列表执行删除操作:

original_array = [[1,2,3,4], [5,6,7,8], [9,10,11,12]]
for sublist in original_array:
    # 第4个元素的索引是3(Python索引从0开始),用pop(3)删掉它
    sublist.pop(3)
    # 也可以用 del sublist[3],效果完全一样

循环跑完之后,原数组里的每个子列表就只剩3个元素了。

为啥你之前操作不对?

你之前应该是直接给父数组用了pop(3),这是对整个父数组操作,会删掉父数组里索引为3的元素(也就是第4个子列表),而不是每个子列表里的第4个元素。必须要遍历每个子列表,针对子列表本身动手才行。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.08 03:35:44