Python list列表删除元素的4种方法


Posted in Python onNovember 01, 2021

在 Python 列表中删除元素主要分为以下 3 种场景:

  • 根据目标元素所在位置的索引进行删除,可以使用 del 关键字或者 pop() 方法;
  • 根据元素本身的值进行删除,可使用列表(list类型)提供的 remove() 方法;
  • 将列表中所有元素全部删除,可使用列表(list类型)提供的 clear() 方法。

del:根据索引值删除元素

del 是 Python 中的关键字,专门用来执行删除操作,它不仅可以删除整个列表,还可以删除列表中的某些元素。我们已经在《Python列表》中讲解了如何删除整个列表,所以本节只讲解如何删除列表元素。

del 可以删除列表中的单个元素,格式为:

del listname[index]

其中,listname 表示列表名称,index 表示元素的索引值。

del 也可以删除中间一段连续的元素,格式为:

del listname[start : end]

其中,start 表示起始索引,end 表示结束索引。del 会删除从索引 start 到 end 之间的元素,不包括 end 位置的元素。

【示例】使用 del 删除单个列表元素:

lang = ["Python", "C++", "Java", "PHP", "Ruby", "MATLAB"]
#使用正数索引
del lang[2]
print(lang)
#使用负数索引
del lang[-2]
print(lang)

运行结果:
['Python', 'C++', 'PHP', 'Ruby', 'MATLAB']
['Python', 'C++', 'PHP', 'MATLAB']

【示例】使用 del 删除一段连续的元素:

lang = ["Python", "C++", "Java", "PHP", "Ruby", "MATLAB"]
del lang[1: 4]
print(lang)
lang.extend(["SQL", "C#", "Go"])
del lang[-5: -2]
print(lang)

运行结果:
['Python', 'Ruby', 'MATLAB']
['Python', 'C#', 'Go']

pop():根据索引值删除元素

Python pop() 方法用来删除列表中指定索引处的元素,具体格式如下:

listname.pop(index)

其中,listname 表示列表名称,index 表示索引值。如果不写 index 参数,默认会删除列表中的最后一个元素,类似于数据结构中的“出栈”操作。

pop() 用法举例:

nums = [40, 36, 89, 2, 36, 100, 7]
nums.pop(3)
print(nums)
nums.pop()
print(nums)

运行结果:
[40, 36, 89, 36, 100, 7]
[40, 36, 89, 36, 100]

大部分编程语言都会提供和 pop() 相对应的方法,就是 push(),该方法用来将元素添加到列表的尾部,类似于数据结构中的“入栈”操作。但是 Python 是个例外,Python 并没有提供 push() 方法,因为完全可以使用 append() 来代替 push() 的功能。

remove():根据元素值进行删除

除了 del 关键字,Python 还提供了 remove() 方法,该方法会根据元素本身的值来进行删除操作。

需要注意的是,remove() 方法只会删除第一个和指定值相同的元素,而且必须保证该元素是存在的,否则会引发 ValueError 错误。

remove() 方法使用示例:

nums = [40, 36, 89, 2, 36, 100, 7]
#第一次删除36
nums.remove(36)
print(nums)
#第二次删除36
nums.remove(36)
print(nums)
#删除78
nums.remove(78)
print(nums)

运行结果:
[40, 89, 2, 36, 100, 7]
[40, 89, 2, 100, 7]
Traceback (most recent call last):
    File "C:\Users\mozhiyan\Desktop\demo.py", line 9, in <module>
        nums.remove(78)
ValueError: list.remove(x): x not in list

最后一次删除,因为 78 不存在导致报错,所以我们在使用 remove() 删除元素时最好提前判断一下。

clear():删除列表所有元素

Python clear() 用来删除列表的所有元素,也即清空列表,请看下面的代码:

url = list("//www.3water.com/python/")
url.clear()
print(url)

运行结果:
[]

到此这篇关于Python list列表删除元素的4种方法的文章就介绍到这了,更多相关Python list列表删除内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python网络编程调用recv函数完整接收数据的三种方法
Mar 31 Python
flask + pymysql操作Mysql数据库的实例
Nov 13 Python
Python编程之gui程序实现简单文件浏览器代码
Dec 08 Python
python 2.7.14安装图文教程
Apr 08 Python
python实现顺时针打印矩阵
Mar 02 Python
Python实现平行坐标图的绘制(plotly)方式
Nov 22 Python
Django模板标签中url使用详解(url跳转到指定页面)
Mar 19 Python
Python reduce函数作用及实例解析
May 08 Python
python 对一幅灰度图像进行直方图均衡化
Oct 27 Python
python 可视化库PyG2Plot的使用
Jan 21 Python
Python爬虫入门教程02之笔趣阁小说爬取
Jan 24 Python
Pandas实现批量拆分与合并Excel的示例代码
May 30 Python
Python面向对象编程之类的概念
Nov 01 #Python
python代码实现扫码关注公众号登录的实战
python编程实现清理微信重复缓存文件
Nov 01 #Python
python调用ffmpeg命令行工具便捷操作视频示例实现过程
Nov 01 #Python
Python字典的基础操作
Nov 01 #Python
Python集合的基础操作
Nov 01 #Python
python基础之类属性和实例属性
You might like
广播爱好者需要了解的天线知识
2021/03/01 无线电
使用 php4 加速 web 传输
2006/10/09 PHP
php生成excel列序号代码实例
2013/12/24 PHP
php以fastCGI的方式运行时文件系统权限问题及解决方法
2015/05/11 PHP
php多重接口的实现方法
2015/06/20 PHP
PHP钩子实现方法解析
2019/05/21 PHP
PHP接入微信H5支付的方法示例
2019/10/28 PHP
javascript 写的一个简单的timer
2009/07/30 Javascript
利用jQuery 实现GridView异步排序、分页的代码
2010/02/06 Javascript
JavaScript高级程序设计 阅读笔记(十三) js定义类或对象
2012/08/14 Javascript
jQuery基础框架浅入剖析
2012/12/27 Javascript
jquery时间下拉框小例子
2013/04/15 Javascript
select、radio表单回显功能实现避免使用jquery载入赋值
2013/06/08 Javascript
js正文内容高亮效果的实现方法
2013/06/30 Javascript
Bootstrap开发实战之第一次接触Bootstrap
2016/06/02 Javascript
微信小程序 底部导航栏目开发资料
2016/12/05 Javascript
在knockoutjs 上自己实现的flux(实例讲解)
2017/12/18 Javascript
如何从头实现一个node.js的koa框架
2019/06/17 Javascript
Python编码类型转换方法详解
2016/07/01 Python
Python中工作日类库Busines Holiday的介绍与使用
2017/07/06 Python
Python实现对一个函数应用多个装饰器的方法示例
2018/02/09 Python
Tensorflow之Saver的用法详解
2018/04/23 Python
Python中return self的用法详解
2018/07/27 Python
python将一组数分成每3个一组的实例
2018/11/14 Python
从列表或字典创建Pandas的DataFrame对象的方法
2019/07/06 Python
python和php哪个更适合写爬虫
2020/06/22 Python
HTML5 Web存储方式的localStorage和sessionStorage进行数据本地存储案例应用
2012/12/09 HTML / CSS
英文版区域经理求职信
2013/10/23 职场文书
关于青春的演讲稿800字
2014/08/22 职场文书
党员群众路线自我剖析材料
2014/10/06 职场文书
学前班学生评语
2014/12/29 职场文书
家长会开场白和结束语
2015/05/29 职场文书
校运会班级霸气口号
2015/12/24 职场文书
高中化学教学反思
2016/02/22 职场文书
机关单位2016年法制宣传日活动总结
2016/04/01 职场文书
浅谈MySQL表空间回收的正确姿势
2021/10/05 MySQL