文章目录

  • Python list列表
    • del:根据索引值删除元素
    • pop():根据索引值删除元素
    • remove():根据元素值进行删除
    • clear():删除列表所有元素

Python list列表

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

  1. 根据目标元素所在位置的索引进行删除,可以使用 del 关键字或者 pop() 方法;
  2. 根据元素本身的值进行删除,可使用列表(list类型)提供的 remove() 方法;
  3. 将列表中所有元素全部删除,可使用列表(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
nums.remove(78)
ValueError: list.remove(x): x not in list

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

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

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

url = list("http://c.biancheng.net/python/")
url.clear()
print(url)

运行结果:

[]

Python list列表删除元素(4种方法)相关推荐

  1. python如何删除代码_Python列表删除的三种方法代码分享

    1.使用del语句删除元素 >>> i1 = ["a",'b','c','d'] >>> del i1[0] >>> prin ...

  2. Python对列表去重的4种方法

    Python对列表去重的4种方法 列表 去重 开发中对数组.列表去重是非常常见的需求,对一个list中的id进行去重,有下面几种方法,前面两种方法不能保证顺序, 后面两种方法可以保持原来的顺序. 下面 ...

  3. 4.4 Python list列表删除元素(4种方法

    在 Python 列表中删除元素主要分为以下 3 种场景: 根据目标元素所在位置的索引进行删除,可以使用 del 关键字或者 pop() 方法: 根据元素本身的值进行删除,可使用列表(list类型)提 ...

  4. python 循环列表删除元素

    https://segmentfault.com/a/1190000007214571 Python的for可以遍历一个List,但是在遍历的过程中删除元素常常会得到意想不到的结果甚至程序出现异常,例 ...

  5. python list列表排序的两种方法及实例讲解

    对List进行排序,Python提供了两个方法 方法1.用List的内建函数list.sort进行排序 list.sort(func=None, key=None, reverse=False) Py ...

  6. python遍历列表删除元素与修改元素

    这两天写代码的时候遇到了,纪录一下,下次就不用去翻别人的了. 删除元素的时候呢,这样写: for i in a[:]:a.remove(i) 如果是修改元素,在遍历时如果想用迭代器对元素进行修改,是不 ...

  7. python删除列表第几个元素_python中对列表list遍历的过程中删除元素4种方法

    代码存储库,记录在删除列表中指定元素代码 背景:li=[1,2,3,2,1,3,4,6,73,5,1,3,1,2,4] 列表中的所有等于1,2,3的值 解决方法: 第一种使用逆序遍历num_list ...

  8. Python:列表去重的两种方法

    方法一:使用 set() 方法进行去重 # 一.准备一个带有重复数据的列表 list_1 = [1,2,3,1,5,6,2]# 二.使用 set() 方法进行去重处理 #[注:仅用 set() 方法处 ...

  9. Python 循环列表删除元素的注意事项

    错误示范: class Solution:def removeElement(self, nums, val: int) -> int:for i, num in enumerate(nums) ...

最新文章

  1. iptables基础——链与表
  2. h5压缩图片上传 php_一键压缩,图片上传大小不得超过200K?
  3. 关于Google插件Postman的使用方法
  4. php编写个人所得税单元测试,php趣味编程-php求个人所得税
  5. python axes_python matplotlib中axes与axis的区别?
  6. Spring Security OAuth2整合JWT
  7. 开源3d模型格式转换_将您的开源业务转换为基于收入的模型时应考虑的因素
  8. p1218 Superprime Rib
  9. CAS实现单点登录SSO执行原理探究超详细
  10. ASP.NET 订餐系统-程序+配置文档
  11. 最新码支付源码+全套的程序+三网监控+易支付H5接口 2022年6月22号
  12. iPhone手机屏幕尺寸详细表格、A10和A11处理器介绍
  13. 计算机无法进入测试页面,为什么打印机无法打印测试页?介绍具体的多种原因及解决方法...
  14. 【无标题】关于BC25连接电信物联网平台的问题(批量产品在广东连接不到物联网平台,在合肥测试是可以的)
  15. java 根据PDF模板生成PDF文件并导出
  16. Altium Designer21 的安装过程
  17. 二叉树的叶子结点按从左到右的顺序连成一个单链表
  18. DAO,除了协议、社交、媒体、服务之外还能发展哪个领域?
  19. K8S相同后端存储在2个K8S集群PVC数据直接拷贝
  20. 瑞芯微RK3036无线同屏器芯片处理器介绍

热门文章

  1. 【20考研】考研英语一 复习书籍推荐!
  2. 量子计算入门学习笔记(六 量子测量-上 )
  3. Python tkinter+turtle制作表白神器
  4. 处理“天文数字”,国家天文台为什么选择与阿里云合作?
  5. 使用 table 表格的方式渲染出学生成绩信息
  6. 测试期就火了?强社交+沙盒建造,这款用一年时间研发的游戏有何特别?
  7. 基于stm32单片机BMP180气压计海拔高度温度测量Proteus仿真
  8. 一个简单答题系统的设计与实现(一)
  9. 概念 多路复用 到底是个啥?通俗易懂的理解
  10. Python图像处理案例汇总