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 29 Python
python编写的最短路径算法
Mar 25 Python
将Python代码嵌入C++程序进行编写的实例
Jul 31 Python
Win7下搭建python开发环境图文教程(安装Python、pip、解释器)
May 17 Python
教你使用python实现微信每天给女朋友说晚安
Mar 23 Python
Python在groupby分组后提取指定位置记录方法
Apr 20 Python
删除DataFrame中值全为NaN或者包含有NaN的列或行方法
Nov 06 Python
解决python有时候import不了当前的包问题
Aug 28 Python
Python 70行代码实现简单算式计算器解析
Aug 30 Python
解决Pycharm 导入其他文件夹源码的2种方法
Feb 12 Python
keras做CNN的训练误差loss的下降操作
Jun 22 Python
python 多线程共享全局变量的优劣
Sep 24 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
apache和php之间协同工作的配置经验分享
2013/04/08 PHP
浅析Mysql 数据回滚错误的解决方法
2013/08/05 PHP
PHP实现文件下载详解
2014/11/27 PHP
PHP实现检测客户端是否使用代理服务器及其匿名级别
2015/01/07 PHP
Laravel实现构造函数自动依赖注入的方法
2016/03/16 PHP
Laravel执行migrate命令提示:No such file or directory的解决方法
2016/03/16 PHP
PHP内置加密函数详解
2016/11/20 PHP
JavaScript 参考教程
2006/12/29 Javascript
Javascript实现关联数据(Linked Data)查询及注意细节
2013/02/22 Javascript
提交表单时执行func方法实现代码
2013/03/17 Javascript
javascript事件冒泡详解和捕获、阻止方法
2014/04/12 Javascript
node.js中的http.request方法使用说明
2014/12/14 Javascript
AngularJS删除路由中的#符号的方法
2016/09/20 Javascript
微信小程序Redux绑定实例详解
2017/06/07 Javascript
jQuery Position方法使用和兼容性
2017/08/23 jQuery
vue和webpack安装命令详解
2018/06/15 Javascript
nodejs 使用 js 模块的方法实例详解
2018/12/04 NodeJs
Vue 3.0 前瞻Vue Function API新特性体验
2019/08/12 Javascript
Python中实现字符串类型与字典类型相互转换的方法
2014/08/18 Python
详解Python自建logging模块
2018/01/29 Python
Python小工具之消耗系统指定大小内存的方法
2018/12/03 Python
树莓派极简安装OpenCv的方法步骤
2019/10/10 Python
python的help函数如何使用
2020/06/11 Python
HTML5中的Article和Section元素认识及使用
2013/03/22 HTML / CSS
优衣库澳大利亚官网:UNIQLO澳大利亚
2017/01/18 全球购物
Forever 21美国官网:美国标志性快时尚品牌
2017/02/20 全球购物
高品质和独特的产品世界:Creations and Collections
2018/01/07 全球购物
美国厨房和园艺工具网上商店:Nestneed
2019/08/24 全球购物
应届生会计电算化求职信
2013/10/03 职场文书
自考毕业生自我鉴定
2013/11/04 职场文书
中文系学生自荐信范文
2013/11/13 职场文书
高三学生评语大全
2014/04/25 职场文书
诉前财产保全担保书
2014/05/20 职场文书
2014教师党员自我评议总结
2014/09/19 职场文书
银行实习推荐信
2015/03/27 职场文书
公司备用金管理制度
2015/08/04 职场文书