对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 制作图片转pdf工具
Jan 30 Python
用Python遍历C盘dll文件的方法
May 06 Python
Python实现把数字转换成中文
Jun 29 Python
玩转python selenium鼠标键盘操作(ActionChains)
Apr 12 Python
更改Ubuntu默认python版本的两种方法python-&gt; Anaconda
Dec 18 Python
python列表生成式与列表生成器的使用
Feb 23 Python
unittest+coverage单元测试代码覆盖操作实例详解
Apr 04 Python
Python基于win32ui模块创建弹出式菜单示例
May 09 Python
python中将\\uxxxx转换为Unicode字符串的方法
Sep 06 Python
python实现读取excel文件中所有sheet操作示例
Aug 09 Python
Pytorch在dataloader类中设置shuffle的随机数种子方式
Jan 14 Python
浅谈tensorflow 中的图片读取和裁剪方式
Jun 30 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
PHP中如何调用webservice的实例参考
2013/04/25 PHP
php替换字符串中间字符为省略号的方法
2015/05/04 PHP
php计算多个集合的笛卡尔积实例详解
2017/02/16 PHP
PHP实现一个轻量级容器的方法
2019/01/28 PHP
PHP中命名空间的使用例子
2019/03/22 PHP
Gambit vs CL BO3 第二场 2.13
2021/03/10 DOTA
Javascript 面试题随笔
2011/03/31 Javascript
jQuery EasyUI API 中文文档 - Spinner微调器使用
2011/10/21 Javascript
基于jQuery实现图片的前进与后退功能
2013/04/24 Javascript
angular中使用路由和$location切换视图
2015/01/23 Javascript
jQuery中get方法用法分析
2016/12/07 Javascript
JS实现iframe自适应高度的方法示例
2017/01/07 Javascript
使用vue打包时vendor文件过大或者是app.js文件很大的问题
2018/06/29 Javascript
JavaScript遍历数组和对象的元素简单操作示例
2019/07/09 Javascript
jQuery实现checkbox全选、反选及删除等操作的方法详解
2019/08/02 jQuery
[00:57]辉夜杯战队访谈宣传片—VG
2015/12/25 DOTA
[52:20]VP vs VG Supermajor小组赛 B组胜者组决赛 BO3 第一场 6.2
2018/06/03 DOTA
[10:42]Team Liquid Vs Newbee
2018/06/07 DOTA
python3模拟百度登录并实现百度贴吧签到示例分享(百度贴吧自动签到)
2014/02/24 Python
Python的mysql数据库的更新如何实现
2017/07/31 Python
在SQLite-Python中实现返回、查询中文字段的方法
2019/07/17 Python
python正则表达式实例代码
2020/03/03 Python
QML实现钟表效果
2020/06/02 Python
Python字符串格式化常用手段及注意事项
2020/06/17 Python
css3 伪元素和伪类选择器详解
2014/09/04 HTML / CSS
专门经营化妆刷的美国彩妆品牌:Sigma Beauty
2017/09/11 全球购物
艺龙旅行网酒店预订:国内、港澳台酒店
2018/06/26 全球购物
为女性购买传统的印度服装和婚纱:Kalkifashion
2019/07/22 全球购物
2013届毕业生求职信范文
2013/11/20 职场文书
2015元旦晚会主持词(开场白+结束语)
2014/12/14 职场文书
优秀教育工作者事迹材料
2014/12/24 职场文书
2015年绩效考核工作总结
2015/05/23 职场文书
大学生实习证明
2015/06/16 职场文书
Python如何使用logging为Flask增加logid
2021/03/30 Python
mysql部分操作
2021/04/05 MySQL
Linux7.6二进制安装Mysql8.0.27详细操作步骤
2021/11/27 MySQL