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 相关文章推荐
在Mac OS上部署Nginx和FastCGI以及Flask框架的教程
May 02 Python
Python中pip安装非PyPI官网第三方库的方法
Jun 02 Python
python实现红包裂变算法
Feb 16 Python
TensorFlow安装及jupyter notebook配置方法
Sep 08 Python
Python中property属性实例解析
Feb 10 Python
Redis使用watch完成秒杀抢购功能的代码
May 07 Python
Python-copy()与deepcopy()区别详解
Jul 12 Python
使用python-opencv读取视频,计算视频总帧数及FPS的实现
Dec 10 Python
Tensorflow累加的实现案例
Feb 05 Python
python 递归调用返回None的问题及解决方法
Mar 16 Python
PyQt5实现登录页面
May 30 Python
python和Appium的移动端多设备自动化测试框架
Apr 26 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笔记之:初探PHPcms模块开发介绍
2013/04/26 PHP
php等比例缩放图片及剪切图片代码分享
2016/02/13 PHP
用JavaScript脚本实现Web页面信息交互
2006/12/21 Javascript
在jquery中处理带有命名空间的XML数据
2011/06/13 Javascript
js绑定事件this指向发生改变的问题解决方法
2013/04/23 Javascript
百度地图自定义控件分享
2015/03/04 Javascript
jQuery实现可高亮显示的二级CSS菜单效果
2015/09/01 Javascript
JavaScript实现的简单烟花特效代码
2015/10/20 Javascript
js中使用使用原型(prototype)定义方法的好处详解
2016/07/04 Javascript
ASP.NET jquery ajax传递参数的实例
2016/11/02 Javascript
JS中传递参数的几种不同方法比较
2017/01/20 Javascript
微信小程序 定位到当前城市实现实例代码
2017/02/23 Javascript
详解angularjs获取元素以及angular.element()用法
2017/07/25 Javascript
浅谈vue-router2路由参数注意的问题
2017/11/08 Javascript
Express本地测试HTTPS的示例代码
2018/06/06 Javascript
基于React+Redux的SSR实现方法
2018/07/03 Javascript
vue项目中使用lib-flexible解决移动端适配的问题解决
2018/08/23 Javascript
微信小程序使用npm包的方法步骤
2019/08/13 Javascript
微信小程序swiper左右扩展各显示一半代码实例
2019/12/05 Javascript
基于小程序请求接口wx.request封装的类axios请求
2020/07/02 Javascript
JS highcharts实现动态曲线代码示例
2020/10/16 Javascript
python使用新浪微博api上传图片到微博示例
2014/01/10 Python
解决Python pandas df 写入excel 出现的问题
2018/07/04 Python
解决Python安装时报缺少DLL问题【两种解决方法】
2019/07/15 Python
Python 实现try重新执行
2019/12/21 Python
Python底层封装实现方法详解
2020/01/22 Python
flask 框架操作MySQL数据库简单示例
2020/02/02 Python
CSS3属性background-size使用指南
2014/12/09 HTML / CSS
生产管理的三大手法
2013/11/11 职场文书
英文自荐信常用句子
2014/03/26 职场文书
创业融资计划书
2014/04/25 职场文书
音乐教育专业自荐信
2014/09/18 职场文书
2015年社会治安综合治理工作总结
2015/04/10 职场文书
拿破仑传读书笔记
2015/07/01 职场文书
大学生如何逃脱“毕业季创业队即散伙”魔咒?
2019/08/19 职场文书
idea以任意顺序debug多线程程序的具体用法
2021/08/30 Java/Android