如何删除二维数组指定索引位置的元素,执行pop操作时出现参数报错如何解决
报错原因
list.pop()仅支持传入单个整数类型的索引参数,原代码中array.pop(1,[3])传入了2个参数,不符合语法要求,因此触发参数错误。- 原代码的操作逻辑和需求不匹配:需求是删除第一个子数组内部的倒数第二个元素,而非删除外层数组的元素,不需要调用外层数组的
pop方法。
正确实现代码
array=[[9,0,8,2,5]] length=len(array) for i in range(length): print(array[i]) array.insert(0,[3,7,2,9]) print(array) array[0][2]=50 print(array) # 删除第一个子数组的倒数第二个元素 array[0].pop(-2) print(array)
实现说明
array[0]定位到二维数组的第一个子数组- 负索引
-2直接对应子数组的倒数第二个元素,无需手动计算子数组长度 - 调用子数组自身的
pop()方法传入-2,即可完成指定元素的删除
内容的提问来源于stack exchange,提问作者S.M Ausaja
相关产品推荐
相关产品推荐

