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


Posted in Python onNovember 07, 2018

以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

以上这篇对python中数组的del,remove,pop区别详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python 数据加密代码
Dec 24 Python
python threading模块操作多线程介绍
Apr 08 Python
Python的Django中django-userena组件的简单使用教程
May 30 Python
Python中对象的引用与复制代码示例
Dec 04 Python
python爬虫增加访问量的方法
Aug 22 Python
Python检查 云备份进程是否正常运行代码实例
Aug 22 Python
appium+python adb常用命令分享
Mar 06 Python
django admin管理工具自定义时间区间筛选器DateRangeFilter介绍
May 19 Python
详解Python IO口多路复用
Jun 17 Python
用python绘制樱花树
Oct 09 Python
Selenium关闭INFO:CONSOLE提示的解决
Dec 07 Python
FP-growth算法发现频繁项集——构建FP树
Jun 24 Python
对Python中plt的画图函数详解
Nov 07 #Python
python使用matplotlib绘制热图
Nov 07 #Python
Django objects的查询结果转化为json的三种方式的方法
Nov 07 #Python
Python将一个Excel拆分为多个Excel
Nov 07 #Python
python计算两个矩形框重合百分比的实例
Nov 07 #Python
numpy 计算两个数组重复程度的方法
Nov 07 #Python
python中for循环输出列表索引与对应的值方法
Nov 07 #Python
You might like
转生史莱姆:萌王第一次撸串开心到飞起,哥布塔撸串却神似界王神
2018/11/30 日漫
用PHP实现小写金额转换大写金额的代码(精确到分)
2012/01/10 PHP
PHP empty函数报错解决办法
2014/03/06 PHP
PHP模块memcached使用指南
2014/12/08 PHP
php微信公众号开发模式详解
2016/11/28 PHP
Autocomplete Textbox Example javascript实现自动完成成功
2007/08/17 Javascript
jQuery Selector选择器小结
2010/05/06 Javascript
js中使用DOM复制(克隆)指定节点名数据到新的XML文件中的代码
2011/07/27 Javascript
浅析jQuery(function(){})与(function(){})(jQuery)之间的区别
2014/01/09 Javascript
js实现有时间限制消失的图片方法
2015/02/27 Javascript
js防阻塞加载的实现方法
2016/09/09 Javascript
微信小程序 获取当前地理位置和经纬度实例代码
2016/12/05 Javascript
jQuery中的一些小技巧
2017/01/18 Javascript
angularjs select 赋值 ng-options配置方法
2018/02/28 Javascript
详解微信小程序之一键复制到剪切板
2019/04/24 Javascript
vue-router路由模式详解(小结)
2019/08/26 Javascript
VUE使用axios调用后台API接口的方法
2020/08/03 Javascript
Python使用shelve模块实现简单数据存储的方法
2015/05/20 Python
在Python的Django框架中加载模版的方法
2015/07/16 Python
Python实现可设置持续运行时间、线程数及时间间隔的多线程异步post请求功能
2018/01/11 Python
在Pycharm中执行scrapy命令的方法
2019/01/16 Python
在Python中append以及extend返回None的例子
2019/07/20 Python
python如何实现复制目录到指定目录
2020/02/13 Python
Pandas —— resample()重采样和asfreq()频度转换方式
2020/02/26 Python
python tkinter之 复选、文本、下拉的实现
2020/03/04 Python
天猫国际进口超市直营:官方直采,一站购齐
2017/12/11 全球购物
size?爱尔兰官方网站:英国伦敦的球鞋精品店
2019/03/31 全球购物
统计系教授推荐信
2014/02/28 职场文书
《窗前的气球》教学反思
2014/04/07 职场文书
国际贸易专业求职信
2014/06/04 职场文书
比赛口号大全
2014/06/10 职场文书
立志成才演讲稿
2014/09/04 职场文书
基层干部个人对照检查及整改措施
2014/10/28 职场文书
保研导师推荐信
2015/03/25 职场文书
养成教育主题班会
2015/08/13 职场文书
六年级上册《闻官军收河南河北》的教学设计
2019/11/15 职场文书