python中del和pop的区别_python 数组的del ,remove,pop区别

  • Post author:
  • Post category:python


以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 是删除首个符合条件的元素。并不是删除特定的索引。如下例: 本文来自Novell迷网站 http://novell.me

>>> 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返回的是你弹出的那个数值。

所以使用时要根据你的具体需求选用合适的方法。 内容来自http://novell.me

另外它们如果出错,出错模式也是不一样的。注意看下面区别:

>>> a = [4, 5, 6]

>>> a.remove(7)

Traceback (most recent call last):

File “”, line 1, in

ValueError: list.remove(x): x not in list

>>> del a[7]

Traceback (most recent call last):

File “”, line 1, in

IndexError: list assignment index out of range

>>> a.pop(7)

Traceback (most recent call last):

File “”, line 1, in

IndexError: pop index out of range

python删除列表元素remove,pop,del

python删除列表元素 觉得有用的话,欢迎一起讨论相互学习~Follow Me remove 删除单个元素,删除首个符合条件的元素,按值删除,返回值为空 List_remove = [1, 2, 2 …

Python中remove,del和pop的区别

以a=[1,2,3] 为例,似乎使用del, remove, pop一个元素2 之后 a都是为 [1,3], 如下:http://Novell.Me >>> a=[1,2,3] &g …

[Python基础]Python中remove,del和pop的区别

以a=[1,2,3] 为例,似乎使用del, remove, pop一个元素2 之后 a都是为 [1,3], 如下:http://Novell.Me >>> a=[1,2,3] &g …

Python中remove,pop,del的区别

先上题:写出最终打印的结果 a = [1, 2, 3, 4] for x in a: a.remove(x) print(a) print(“=” * 20) b = [1, 2, …

python的append insert extend pop del remove使用

对于 python 数组的操作,有插入和删除,下面介绍各个函数的功能: 插入 插入的函数有 append.insert .extend append append(i) 是在数组的末尾插入一个元素 i …

python数组的使用

python数组的使用 2010-07-28 17:17 1.Python的数组分三种类型:(1) list 普通的链表,初始化后可以通过特定方法动态增加元素.定义方式:arr = [元素] (2) …

python数组(列表、元组及字典)

python数组的使用 2010-07-28 17:17 1.Python的数组分三种类型: (1) list 普通的链表,初始化后可以通过特定方法动态增加元素. 定义方式:arr = [元素] (2 …

Python数组使用

python数组的使用 2010-07-28 17:17 1.Python的数组分三种类型: (1) list 普通的链表,初始化后可以通过特定方法动态增加元素. 定义方式:arr = [元素] (2 …

随机推荐

Struts2 源码分析——配置管理之ContainerProvider接口

本章简言 上一章笔者讲到关于Dispatcher类的执行action功能,知道了关于执行action需要用到的信息.而本章将会讲到的内容也跟Dispatcher类有关系.那就是配置管理中的Contai …

满足要求的最长上升子序列(nlogn)

题意:数列A1,A2,…,AN,修改最少的数字,使得数列严格单调递增.(1<=N<=10^5; 1<=Ai<=10^9 ) 思路:首先要明白的一点是数列是严格单调递增,那么 …

彻底卸载oracle数据库

有时候因为各种各样的原因,我们不得不重装Oracle,但按照一般的操作,很多朋友用了oracle的删除,然后,你会发现重新安装时,点了下一步安装界面就消失了.事实证明,万能的重启也是解决不了问题的.往 …

pyqt5 笔记(四)cx&lowbar;Freeze 实现代码打包exe

下载地址:https://pypi.python.org/pypi/cx_Freeze 教程:http://www.cnblogs.com/xinzaitian/archive/2010/12/10/ …

web项目直接在浏览器上访问不需要带&period;jsp,直接ip地址加项目名 在web&period;xml里配置

web.xml最上方 /view/login.jsp < …

【3】Asp&period;Net Core2&period;2新版管道处理模型

[前言] 上一篇完成了Asp.Net Core 2.2项目的一个最简单功能的添加,从控制器-视图-实体轻松交互了一下,感觉跟之前的MVC没啥差别!但这些都是在组件封装的基础上完成的,在Core里面,其 …

How Tomcat works — 一、怎样阅读源码

在编程的道路上,通过阅读优秀的代码来提升自己是很好的办法.一直想阅读一些开源项目,可是没有合适的机会开始.最近做项目的时候用到了shiro,需要做集群的session共享,经过查找发现tomcat的s …

Failed to load because no supported source was found

Uncaught (in promise) DOMException: Failed to load because no supported source was found? 等待解决:

opencv 图像深度&lpar;depth&rpar;