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 httplib模块使用实例
Apr 11 Python
Python的Flask框架中实现登录用户的个人资料和头像的教程
Apr 20 Python
浅谈Python中copy()方法的使用
May 21 Python
python3 模拟登录v2ex实例讲解
Jul 13 Python
分析Python读取文件时的路径问题
Feb 11 Python
python中reader的next用法
Jul 24 Python
详解python中的index函数用法
Aug 06 Python
Python操作列表常用方法实例小结【创建、遍历、统计、切片等】
Oct 25 Python
python通过nmap扫描在线设备并尝试AAA登录(实例代码)
Dec 30 Python
浅谈pytorch池化maxpool2D注意事项
Feb 18 Python
python环境搭建和pycharm的安装配置及汉化详细教程(零基础小白版)
Aug 19 Python
Python利器openpyxl之操作excel表格
Apr 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
PHP中的use关键字概述
2014/07/23 PHP
php判断表是否存在的方法
2015/06/18 PHP
Javascript图像处理思路及实现代码
2012/12/25 Javascript
通过正则表达式实现表单验证是否为中文
2014/02/18 Javascript
jquery的live使用注意事项
2014/02/18 Javascript
javascript创建对象、对象继承的实用方式详解
2016/03/08 Javascript
JavaScript数组方法大全(推荐)
2016/07/05 Javascript
Vue.js数据绑定之data属性
2017/07/07 Javascript
BootStrap下的弹出框加载select2框架失败的解决方法
2017/08/31 Javascript
vue自定义底部导航栏Tabbar的实现代码
2018/09/03 Javascript
基于Vue-cli快速搭建项目的完整步骤
2018/11/03 Javascript
JS基于对象的链表实现与使用方法示例
2019/01/31 Javascript
微信小程序开发(三):返回上一级页面并刷新操作示例【页面栈】
2020/06/01 Javascript
javascript实现京东快递单号的查询效果
2020/11/30 Javascript
JS中锚点链接点击平滑滚动并自由调整到顶部位置
2021/02/06 Javascript
使用Python对Access读写操作
2017/03/30 Python
pycharm远程调试openstack代码
2017/11/21 Python
利用python脚本如何简化jar操作命令
2019/02/24 Python
Python上下文管理器类和上下文管理器装饰器contextmanager用法实例分析
2019/11/07 Python
Python使用循环神经网络解决文本分类问题的方法详解
2020/01/16 Python
Python2 与Python3的版本区别实例分析
2020/03/30 Python
Python中的wordcloud库安装问题及解决方法
2020/05/27 Python
解决python3中os.popen()出错的问题
2020/11/19 Python
使用canvas生成含有微信头像的邀请海报没有微信头像问题
2019/10/29 HTML / CSS
瑞贝卡·明可弗包包官网:Rebecca Minkoff
2016/07/21 全球购物
北美主要的汽车零部件零售商:AutoShack.com
2019/02/23 全球购物
公益广告语集锦
2014/03/13 职场文书
聚美优品的广告词
2014/03/14 职场文书
大学生学期自我鉴定
2014/03/19 职场文书
《大江保卫战》教学反思
2014/04/11 职场文书
十佳护士先进事迹
2014/05/08 职场文书
小学语文教研活动总结
2014/07/01 职场文书
住房租房协议书
2014/08/20 职场文书
2015年技术员工作总结
2015/04/10 职场文书
后天观后感
2015/06/08 职场文书
小学数学教师研修感悟
2015/11/18 职场文书