python中remove函数的踩坑记录


Posted in Python onJanuary 04, 2021

摘要:

在python的使用过程中,难免会遇到要移除列表中对象的要求。这时可以使用remove函数。

对于python中的remove()函数,官方文档的解释是:Remove first occurrence of value.大意也就是移除列表中等于指定值的第一个匹配的元素。

语法

list.remove()

参数

obj 参数:从列表中删除的对象的索引

返回值

删除后不会返回值

常见用法:

a = [1,2,3,4],a.remove(1),然后a就是[2,3,4];对于a = [1,1,1,2],其结果也是[1,1,2],这是最基本的用法。

但是对于下面这个:

a = [1,2,3,4]
for i in a:
  a.remove(i)

# 结果
a = [2,4]

或者说

a = [1,1,1,1,1,2]
for i in a:
  a.remove(1)

 
#结果
a = [1,1,2]

是不是跟想象中的不一样,其主要原因如下(^表示当前迭代器位于列表中的位置):

   a = [ 1 , 2 , 3 , 4]

假设此时  ^

默认情况下只想第一个元素,然后执行a.remove(1),然后下标向后移动,列表因为删除了元素,后面的向前移动,如下:

   a = [ 2 , 3 , 4]

   此时       ^

此时执行a.remove(3),重复上面的移动

   a = [ 2 , 4]

   此时           ^

因为已经到了列表的边界,故结束遍历,并返回`a = [2,4]`。

解决办法:

# 一下为解决办法之一
d = dict(zip(range(len(a)), a))
[v for k, v in d.items() if v != value]

总结:

关于python列表的remove操作涉及了列表下标的移动以及列表中元素的移动,涉及了一些关于数组的知识。其核心问题就是前面所说的。

到此这篇关于python中remove函数的踩坑记录的文章就介绍到这了,更多相关python中remove函数坑内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python读取csv文件示例(python操作csv)
Mar 11 Python
Python中模块string.py详解
Mar 12 Python
详解python之多进程和进程池(Processing库)
Jun 09 Python
python 利用for循环 保存多个图像或者文件的实例
Nov 09 Python
Python设计模式之策略模式实例详解
Jan 21 Python
python实现动态数组的示例代码
Jul 15 Python
python使用requests.session模拟登录
Aug 09 Python
pygame库实现俄罗斯方块小游戏
Oct 29 Python
Python读取YAML文件过程详解
Dec 30 Python
Python绘制全球疫情变化地图的实例代码
Apr 20 Python
python palywright库基本使用
Jan 21 Python
Python深度学习之Pytorch初步使用
May 20 Python
python 日志模块logging的使用场景及示例
Jan 04 #Python
python 邮件检测工具mmpi的使用
Jan 04 #Python
Python3中的tuple函数知识点讲解
Jan 03 #Python
python中pivot()函数基础知识点
Jan 03 #Python
python regex库实例用法总结
Jan 03 #Python
Python爬虫之Selenium库的使用方法
Jan 03 #Python
学会迭代器设计模式,帮你大幅提升python性能
Jan 03 #Python
You might like
php二维数组合并及去重复的方法
2015/03/04 PHP
js脚本学习 比较实用的基础
2006/09/07 Javascript
JS 实现BASE64_ENCODE和BASE64_DECODE(实例代码)
2013/11/13 Javascript
jquery div拖动效果示例代码
2013/12/08 Javascript
js和css写一个可以自动隐藏的悬浮框
2014/03/05 Javascript
javascript实现阻止iOS APP中的链接打开Safari浏览器
2014/06/12 Javascript
浅谈javascript基础之客户端事件驱动
2016/06/10 Javascript
JS实现保留n位小数的四舍五入问题示例
2016/08/03 Javascript
微信小程序 WXML、WXSS 和JS介绍及详解
2016/10/08 Javascript
js 转json格式的字符串为对象或数组(前后台)的方法
2016/11/02 Javascript
小程序卡片切换效果组件wxCardSwiper的实现
2020/02/13 Javascript
python 从远程服务器下载东西的代码
2013/02/10 Python
Python3 单行多行万能正则匹配方法
2019/01/07 Python
Python基础学习之类与实例基本用法与注意事项详解
2019/06/17 Python
python多线程同步之文件读写控制
2021/02/25 Python
django 做 migrate 时 表已存在的处理方法
2019/08/31 Python
python opencv进行图像拼接
2020/03/27 Python
基于 HTML5 的 WebGL 3D 版俄罗斯方块的示例代码
2018/05/28 HTML / CSS
检测浏览器是否支持html5视频的代码
2013/03/28 HTML / CSS
德国自然时尚和有机产品购物网站:Waschbär
2019/05/29 全球购物
Yummie官方网站:塑身衣和衣柜必需品
2019/10/29 全球购物
教师年终个人自我评价
2013/10/04 职场文书
公司综合部的成员自我评价分享
2013/11/05 职场文书
《石榴》教学反思
2014/03/02 职场文书
终止劳动合同协议书
2014/04/14 职场文书
一份关于丢失公司财物的检讨书
2014/09/19 职场文书
2014院党委领导班子及其成员群众路线对照检查材料思想汇报
2014/10/04 职场文书
基层党员群众路线整改措施及努力方向
2014/10/28 职场文书
初中生300字旷课检讨书
2014/11/19 职场文书
2015年学校关工委工作总结
2015/04/03 职场文书
2015年度公共机构节能工作总结
2015/05/26 职场文书
运动会宣传语
2015/07/13 职场文书
先进教师个人主要事迹材料
2015/11/03 职场文书
2016年党员创先争优承诺书
2016/03/25 职场文书
Python 流媒体播放器的实现(基于VLC)
2021/04/28 Python
Django rest framework如何自定义用户表
2021/06/09 Python