对python中数组的del,remove,pop区别详解

作者:AnneQiQi 时间:2021-01-23 09:22:31 

以a=[1,2,3] 为例,似乎使用del, remove, pop一个元素2 之后 a都是为 [1,3],

如下:


>>> a=[1,2,3]
>>> a.remove(2)
>>> a
[1, 3]
>>> a=[1,2,3]
>>> del a[1]
>>> a
[1, 3]
>>> a= [1,2,3]
>>> a.pop(1)
2
>>> a
[1, 3]
>>>

那么Python对于列表的del, remove, pop操作,它们之间有何区别呢?

首先,remove 是删除首个符合条件的元素。并不是删除特定的索引。

如下例:


>>> a = [0, 2, 2, 3]
>>> a.remove(2)
>>> a
[0, 2, 3]

而对于 del 来说,它是根据索引(元素所在位置)来删除的,如下例:


>>> a = [3, 2, 2, 1]
>>> del a[1]
[3, 2, 1]

第1个元素为a[0] --是以0开始计数的。则a[1]是指第2个元素,即里面的值2.

最后我们再看看pop


>>> a = [4, 3, 5]
>>> a.pop(1)
3
>>> a
[4, 5]

pop返回的是你弹出的那个数值。

所以使用时要根据你的具体需求选用合适的方法。

另外它们如果出错,出错模式也是不一样的。

注意看下面区别:


>>> a = [4, 5, 6]
>>> a.remove(7)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: list.remove(x): x not in list
>>> del a[7]
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
IndexError: list assignment index out of range
>>> a.pop(7)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
IndexError: pop index out of range

来源:https://blog.csdn.net/AnneQiQi/article/details/71057069

标签:python,del,remove,pop
0
投稿

猜你喜欢

  • 利用Python pandas对Excel进行合并的方法示例

    2022-07-31 13:39:41
  • 你凭什么说你的网站用户体验好

    2011-03-31 17:08:00
  • 良好体验,必须是全方位的

    2009-09-24 13:32:00
  • PHP实现登录的Cookie存储方案详解

    2023-05-25 08:45:17
  • Python对于json数据键值对遍历

    2023-02-21 06:01:08
  • Python稀疏矩阵scipy.sparse包使用详解

    2022-07-31 04:42:42
  • 在ironpython中利用装饰器执行SQL操作的例子

    2022-07-10 19:27:37
  • Python学习之不同数据类型间的转换总结

    2021-10-04 06:06:57
  • 基础语音识别-食物语音识别baseline(CNN)

    2023-04-05 22:44:11
  • 一个ASPJPEG组件的asp类 CLASS

    2008-03-11 12:22:00
  • 解决Python安装后pip不能用的问题

    2023-05-10 04:52:14
  • Web标准下该如何“插入”图像

    2008-03-17 13:01:00
  • sqlserver关于分页存储过程的优化【让数据库按我们的意思执行查询计划】

    2011-09-30 11:09:37
  • 使用Python的音乐播放器GUI的实现

    2022-03-02 05:02:45
  • Win10下python3.5和python2.7环境变量配置教程

    2021-08-31 10:40:23
  • Django 状态保持搭配与存储的实现

    2021-05-10 04:16:00
  • Python Web框架之Django框架cookie和session用法分析

    2021-08-23 05:30:15
  • 微信小程序学习笔记之文件上传、下载操作图文详解

    2023-09-07 21:13:21
  • MySQL数据库中应当如何实施info()函数

    2008-11-27 15:04:00
  • JS+CSS实现仿支付宝菜单选中效果代码

    2023-10-05 07:29:01
  • asp之家 网络编程 m.aspxhome.com