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 相关文章推荐
matplotlib绘制符合论文要求的图片实例(必看篇)
Jun 02 Python
python实现生命游戏的示例代码(Game of Life)
Jan 24 Python
关于Python的一些学习总结
May 25 Python
解决Python下json.loads()中文字符出错的问题
Dec 19 Python
python写日志文件操作类与应用示例
Jul 01 Python
Kears+Opencv实现简单人脸识别
Aug 28 Python
Python搭建代理IP池实现存储IP的方法
Oct 27 Python
基于python3生成标签云代码解析
Feb 18 Python
利用 Python ElementTree 生成 xml的实例
Mar 06 Python
Python使用socket_TCP实现小文件下载功能
Oct 09 Python
装上这 14 个插件后,PyCharm 真的是无敌的存在
Jan 11 Python
pdf论文中python画的图Type 3 fonts字体不兼容的解决方案
Apr 24 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
解析yii数据库的增删查改
2013/06/20 PHP
php使用mb_check_encoding检查字符串在指定的编码里是否有效
2013/11/07 PHP
PHP导入导出Excel代码
2015/07/07 PHP
PHP面向对象程序设计__tostring()和__invoke()用法分析
2019/06/12 PHP
Laravel5.1 框架Middleware中间件基本用法实例分析
2020/01/04 PHP
使用JavaScript动态设置样式实现代码(2)
2013/01/25 Javascript
C++中的string类的用法小结
2015/08/07 Javascript
深入理解JavaScript中为什么string可以拥有方法
2016/05/24 Javascript
js判断请求的url是否可访问,支持跨域判断的实现方法
2016/09/17 Javascript
easyUI实现类似搜索框关键词自动提示功能示例代码
2016/12/27 Javascript
深入理解Webpack 中路径的配置
2017/06/17 Javascript
详解Chai.js断言库API中文文档
2018/01/31 Javascript
用JavaScript实现贪吃蛇游戏
2020/10/23 Javascript
vue用ant design中table表格,点击某行时触发的事件操作
2020/10/28 Javascript
简述Python中的进程、线程、协程
2016/03/18 Python
Python入门之三角函数atan2()函数详解
2017/11/08 Python
python字典快速保存于读取的方法
2018/03/23 Python
Python绘制的二项分布概率图示例
2018/08/22 Python
Python通用函数实现数组计算的方法
2019/06/13 Python
Django 模型类(models.py)的定义详解
2019/07/19 Python
Python使用get_text()方法从大段html中提取文本的实例
2019/08/27 Python
python使用多线程编写tcp客户端程序
2019/09/02 Python
Python写出新冠状病毒确诊人数地图的方法
2020/02/12 Python
推荐8款常用的Python GUI图形界面开发框架
2020/02/23 Python
python实现TCP文件传输
2020/03/20 Python
Python任务调度利器之APScheduler详解
2020/04/02 Python
实例讲解利用HTML5 Canvas API操作图形旋转的方法
2016/03/22 HTML / CSS
加拿大时尚潮流大码女装购物网站:Addition Elle
2018/04/02 全球购物
英国HYPE双肩包官网:英国本土时尚潮牌
2018/09/26 全球购物
什么是抽象
2015/12/13 面试题
工程项目建议书范文
2014/03/12 职场文书
房屋租赁合同解除协议书
2014/10/11 职场文书
敲诈同学钱财检讨书范文
2014/11/18 职场文书
对外汉语教师推荐信
2015/03/27 职场文书
酒店温馨提示语
2015/07/14 职场文书
微软Win11 全新照片应用面向 Dev预览版推出 新版本上手体验图集
2022/09/23 数码科技