python实现删除列表中某个元素的3种方法


Posted in Python onJanuary 15, 2020

python中关于删除list中的某个元素,一般有三种方法:remove、pop、del:

1.remove: 删除单个元素,删除首个符合条件的元素,按值删除

举例说明:

>>> str=[1,2,3,4,5,2,6]
>>> str.remove(2)
>>> str

[1, 3, 4, 5, 2, 6]

2.pop: 删除单个或多个元素,按位删除(根据索引删除)

>>> str=[0,1,2,3,4,5,6]
>>> str.pop(1) #pop删除时会返回被删除的元素
>>> str

[0, 2, 3, 4, 5, 6]

>>> str2=['abc','bcd','dce']
>>> str2.pop(2)
'dce'
>>> str2

['abc', 'bcd']

3.del:它是根据索引(元素所在位置)来删除

举例说明:

>>> str=[1,2,3,4,5,2,6]
>>> del str[1]
>>> str

[1, 3, 4, 5, 2, 6]

>>> str2=['abc','bcd','dce']
>>> del str2[1]
>>> str2

['abc', 'dce']

除此之外,del还可以删除指定范围内的值。

>>> str=[0,1,2,3,4,5,6]
>>> del str[2:4] #删除从第2个元素开始,到第4个为止的元素(但是不包括尾部元素)
>>> str

[0, 1, 4, 5, 6]

del 也可以删除整个数据对象(列表、集合等)

>>> str=[0,1,2,3,4,5,6]
>>> del str
>>> str #删除后,找不到对象

Traceback (most recent call last):
File "<pyshell#27>", line 1, in <module>
str
NameError: name 'str' is not defined

注意:del是删除引用(变量)而不是删除对象(数据),对象由自动垃圾回收机制(GC)删除。

补充: 删除元素的变相方法

s1 = (1, 2, 3, 4, 5, 6)
s2 = (2, 3, 5)
s3 = []
for i in s1:
  if i not in s2:
    s3.append(i)
print('s1_1:', s1)
s1 = s3
print('s2:', s2)
print('s3:', s3)
print('s1_2:', s1)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
简洁的十分钟Python入门教程
Apr 03 Python
浅析Python中signal包的使用
Nov 13 Python
python如何生成网页验证码
Jul 28 Python
python调用百度地图WEB服务API获取地点对应坐标值
Jan 16 Python
Python 移动光标位置的方法
Jan 20 Python
由Python编写的MySQL管理工具代码实例
Apr 09 Python
python实现控制COM口的示例
Jul 03 Python
给你一面国旗 教你用python画中国国旗
Sep 24 Python
Python 网络编程之TCP客户端/服务端功能示例【基于socket套接字】
Oct 12 Python
使用matplotlib绘制图例标签中带有公式的图
Dec 13 Python
python和JavaScript哪个容易上手
Jun 23 Python
解决pip install psycopg2出错问题
Jul 09 Python
python opencv根据颜色进行目标检测的方法示例
Jan 15 #Python
Python基于Tensor FLow的图像处理操作详解
Jan 15 #Python
OpenCV哈里斯(Harris)角点检测的实现
Jan 15 #Python
Pytorch模型转onnx模型实例
Jan 15 #Python
Python通过TensorFLow进行线性模型训练原理与实现方法详解
Jan 15 #Python
详解Python实现进度条的4种方式
Jan 15 #Python
pytorch常见的Tensor类型详解
Jan 15 #Python
You might like
php使用ICQ网关发送手机短信
2013/10/30 PHP
PHP使用strtotime获取上个月、下个月、本月的日期
2015/12/30 PHP
List Installed Hot Fixes
2007/06/12 Javascript
实现JavaScript中继承的三种方式
2009/10/16 Javascript
JavaScript使用过程中需要注意的地方和一些基本语法
2010/08/26 Javascript
Firefox中autocomplete=&quot;off&quot; 设置不起作用Bug的解决方法
2011/03/25 Javascript
自动最大化窗口的Javascript代码
2013/05/22 Javascript
jquery动态添加option示例
2013/12/30 Javascript
使用简洁的jQuery方法实现隔行换色功能
2014/01/02 Javascript
Javascript 函数parseInt()转换时出现bug问题
2014/05/20 Javascript
DOM 高级编程
2015/05/06 Javascript
jQuery简单设置文本框回车事件的方法
2016/08/01 Javascript
js获取当前页的URL与window.location.href简单方法
2017/02/13 Javascript
Bootstrap3下拉菜单的实现
2017/02/22 Javascript
微信小程序授权获取用户详细信息openid的实例详解
2017/09/20 Javascript
Vue页面骨架屏注入方法
2018/05/13 Javascript
解决node-sass偶尔安装失败的方法小结
2018/12/05 Javascript
JavaScript自动生成 年月范围 选择功能完整示例【基于jQuery插件】
2019/09/03 jQuery
nodejs如何在package.json中设置多条启动命令
2020/03/16 NodeJs
[02:36]DOTA2亚洲邀请赛小组赛精彩集锦:EE凭借法力虚空拿下4杀
2017/03/30 DOTA
利用QT写一个极简单的图形化Python闹钟程序
2015/04/07 Python
Django实现快速分页的方法实例
2017/10/22 Python
python中学习K-Means和图片压缩
2017/11/20 Python
对Matlab中共轭、转置和共轭装置的区别说明
2020/05/11 Python
python 基于selectors库实现文件上传与下载
2020/12/31 Python
CSS3的first-child选择器实战攻略
2016/04/28 HTML / CSS
中国电子产品外贸网站:MiniIntheBox
2017/02/06 全球购物
欧洲最大的笔和书写专家:The Pen Shop
2017/03/19 全球购物
美赞臣营养马来西亚旗舰店:Enfagrow马来西亚
2019/07/26 全球购物
人事主管岗位职责范本
2013/12/04 职场文书
2014年公司工作总结
2014/11/22 职场文书
商铺租房协议书范本
2014/12/04 职场文书
2014年酒店服务员工作总结
2014/12/08 职场文书
普通员工辞职信范文
2015/05/12 职场文书
追讨欠款律师函
2015/06/24 职场文书
Mysql中常用的join连接方式
2022/05/11 MySQL