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编写检测数据库SA用户的方法
Jul 11 Python
Python最长公共子串算法实例
Mar 07 Python
在Linux系统上部署Apache+Python+Django+MySQL环境
Dec 24 Python
python写日志文件操作类与应用示例
Jul 01 Python
Django框架基础模板标签与filter使用方法详解
Jul 23 Python
Python 使用matplotlib模块模拟掷骰子
Aug 08 Python
Python学习笔记之While循环用法分析
Aug 14 Python
Django模板语言 Tags使用详解
Sep 09 Python
python对象转字典的两种实现方式示例
Nov 07 Python
Python argparse模块应用实例解析
Nov 15 Python
python2.7使用scapy发送syn实例
May 05 Python
idea2020手动安装python插件的实现方法
Jul 17 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
兼容ie6浏览器的php下载文件代码分享
2014/07/14 PHP
WebQQ最新登陆协议的用法
2014/12/22 PHP
PHP中is_file()函数使用指南
2015/05/08 PHP
Laravel框架实现的使用smtp发送邮件功能示例
2019/03/12 PHP
laravel实现登录时监听事件,添加登录用户的记录方法
2019/09/30 PHP
js tab 选项卡
2009/04/26 Javascript
ie和firefox不兼容的解决方法集合
2009/04/28 Javascript
基于jquery的图片轮播 tab切换组件
2012/07/19 Javascript
jQuery Ajax提交表单查询获得数据实例代码
2012/09/19 Javascript
ajax java 实现自动完成功能
2012/12/19 Javascript
jquery导航制件jquery鼠标经过变色效果示例
2013/12/05 Javascript
JavaScript Promise启示录
2014/08/12 Javascript
浅谈vue的踩坑路
2017/08/31 Javascript
phantomjs导出html到pdf的方法总结
2017/10/19 Javascript
完美解决手机网页中输入框被输入法遮挡的问题
2017/12/19 Javascript
jQuery实现表单动态添加数据并提交的方法
2018/07/19 jQuery
vue里的data要用return返回的原因浅析
2019/05/28 Javascript
微信小程序HTTP接口请求封装代码实例
2019/09/05 Javascript
Javascript 类型转换、封闭函数及常见内置对象操作示例
2019/11/15 Javascript
Vue 自适应高度表格的实现方法
2020/05/13 Javascript
js+canvas实现画板功能
2020/09/13 Javascript
python批量同步web服务器代码核心程序
2014/09/01 Python
跟老齐学Python之编写类之三子类
2014/10/11 Python
Python连接mysql数据库的正确姿势
2016/02/03 Python
python @propert装饰器使用方法原理解析
2019/12/25 Python
轻松掌握CSS3中的字体大小单位rem的使用方法
2016/05/24 HTML / CSS
H5 video poster属性设置视频封面的方法
2020/05/25 HTML / CSS
AVIS安飞士奥地利租车官网:提供奥地利、欧洲和全世界汽车租赁
2016/11/29 全球购物
Sunglass Hut巴西网上商店:男女太阳镜
2020/10/04 全球购物
二手房买卖协议书
2014/04/10 职场文书
煤矿安全生产月活动总结
2014/07/05 职场文书
党员个人对照检查材料思想汇报
2014/09/16 职场文书
5.12护士节活动总结
2015/02/10 职场文书
中学社团活动总结
2015/05/07 职场文书
运动员入场前导词
2015/07/20 职场文书
干部作风纪律整顿心得体会
2016/01/23 职场文书