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 反转字符串(reverse)的方法小结
Feb 20 Python
Python爬取成语接龙类网站
Oct 19 Python
python后端接收前端回传的文件方法
Jan 02 Python
深入浅析Python 中 is 语法带来的误解
May 07 Python
Python 3.8中实现functools.cached_property功能
May 29 Python
python 将字符串完成特定的向右移动方法
Jun 11 Python
Python字符串中添加、插入特定字符的方法
Sep 10 Python
Python 随机生成测试数据的模块:faker基本使用方法详解
Apr 09 Python
Python3爬虫中Ajax的用法
Jul 10 Python
Jupyter安装链接aconda实现过程图解
Nov 02 Python
python dir函数快速掌握用法技巧
Dec 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
反射调用private方法实践(php、java)
2015/12/21 PHP
浅析PHP中的 inet_pton 网络函数
2019/12/16 PHP
从零开始学习jQuery (六) jquery中的AJAX使用
2011/02/23 Javascript
js String对象中常用方法小结(字符串操作)
2012/01/27 Javascript
跨浏览器的事件对象介绍
2012/06/27 Javascript
document.all的一个比较完整的总结及案例
2013/01/31 Javascript
JavaScript如何从listbox里同时删除多个项目
2013/10/12 Javascript
js实现完全自定义可带多级目录的网页鼠标右键菜单方法
2015/02/28 Javascript
JS动态修改表格cellPadding和cellSpacing的方法
2015/03/31 Javascript
javascript拖拽应用实例(二)
2016/03/25 Javascript
浅谈javascript基础之客户端事件驱动
2016/06/10 Javascript
详解JavaScript中的属性和特性
2016/12/08 Javascript
实例分析浏览器中“JavaScript解析器”的工作原理
2016/12/12 Javascript
BootStrap selectpicker后台动态绑定数据的方法
2017/07/28 Javascript
详谈DOM简介及节点、属性、查找节点的方法
2017/11/16 Javascript
WebStorm中如何将自己的代码上传到github示例详解
2020/10/28 Javascript
JavaScript实现网页计算器功能
2020/10/29 Javascript
简单上手Python中装饰器的使用
2015/07/12 Python
Django框架下在视图中使用模版的方法
2015/07/16 Python
python 开发的三种运行模式详细介绍
2017/01/18 Python
Django REST framework视图的用法
2019/01/16 Python
解决Pandas的DataFrame输出截断和省略的问题
2019/02/08 Python
利用Python半自动化生成Nessus报告的方法
2019/03/19 Python
python对文件目录的操作方法实例总结
2019/06/24 Python
python中bs4.BeautifulSoup的基本用法
2019/07/27 Python
Django ORM 聚合查询和分组查询实现详解
2019/08/09 Python
python实现可下载音乐的音乐播放器
2020/02/25 Python
python基于exchange函数发送邮件过程详解
2020/11/06 Python
pycharm 如何取消连按两下shift出现的全局搜索
2021/01/15 Python
日本最大级玩偶手办购物:あみあみ Amiami
2018/04/23 全球购物
Brora官网:英国领先的羊绒服装品牌
2019/08/28 全球购物
公务员爱岗敬业演讲稿
2014/08/26 职场文书
准备去美国留学,那么大学申请文书应该怎么写?
2019/08/12 职场文书
pytorch显存一直变大的解决方案
2021/04/08 Python
MySQL的全局锁和表级锁的具体使用
2021/08/23 MySQL
MongoDB数据库之添删改查
2022/04/26 MongoDB