Python对于列表的del, remove, pop操作的区别

1人阅读 评论(0) 收藏 举报
分类:

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

  1. >>> a = [0223
  2. >>> a.remove(2
  3. >>> a 
  4. [023]
而对于 del 来说,它是根据索引(元素所在位置)来删除的,如下例:

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

        del还可以删除指定范围内的值

        a = [3,2,2,1]

        del a[1,3]

        print a

        结果[3]


        del还可以删除整个列表

        del a


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

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


  1. >>> a = [435
  2. >>> a.pop(1
  3. 3 
  4. >>> a 
  5. [45]

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

  1. >>> a = [456
  2. >>> a.remove(7
  3. Traceback (most recent call last): 
  4.   File "<stdin>", line 1in <module> 
  5. ValueError: list.remove(x): x not in list 
  6. >>> del a[7
  7. Traceback (most recent call last): 
  8.   File "<stdin>", line 1in <module> 
  9. IndexError: list assignment index out of range 
  10. >>> a.pop(7
  11. Traceback (most recent call last): 
  12.   File "<stdin>", line 1in <module> 
  13. IndexError: pop index out of range
注:本文引自stackoverflow  

http://novell.me/master-diary/2014-06-05/difference-between-del-remove-and-pop-on.html

查看评论

python:remove,pop和del方法的区别

这三种方法都是list的删除方法,其中remove是针对可变列表的元素进行搜索删除,而pop和del是针对可变列表的下标进行搜索删除。具体区别如下:1. removeremove(item)方法是直接...
  • xavierri
  • xavierri
  • 2017-11-21 12:43:36
  • 186

1007 Python之List中remove,pop,del区别分析

Python之List中remove,pop,del区别分析目录Python之List中removepopdel区别分析目录 代码块 remove pop del 代码块remove#remove删除...
  • hduxiejun
  • hduxiejun
  • 2016-11-09 20:46:16
  • 11635

Python append , pop, del 和 remove 基础知识篇

补补基础知识 先说一下pop和remove的用法和区别 pop,我们知道,从列表中剔除一个元素并返回这个值 remove,从列表中剔除一个值 区别直接上图吧,老外说的也简单明了,remove的...
  • bestallen
  • bestallen
  • 2016-06-19 21:54:37
  • 742

python 数组的del ,remove,pop区别

以a=[1,2,3] 为例,似乎使用del, remove, pop一个元素2 之后 a都是为 [1,3], 如下: >>> a=[1,2,3] >>> a.remove(2) >>> a ...
  • AnneQiQi
  • AnneQiQi
  • 2017-05-01 17:51:22
  • 2303

python 3.x中列表中元素删除del、remove、pop的用法及区别

使用del删除指定位置元素 del是python语句,而不是列表方法,无法通过list来调用。使用del可以删除一个元素,当元素删除之后,位于它后面的元素会自动移动填补空出来的位置。 exampl...
  • deqiangxiaozi
  • deqiangxiaozi
  • 2017-07-23 00:45:50
  • 7316

list中删除元素的方法:pop(x)和remove(x)

简单总结一下: list.remove(x)中的参数是列表中元素,即删除某个元素;list.pop([i])中的i是列表中元素的索引值,这个i用放括号包裹起来,意味着还可以不写任何索引值,如...
  • wuxiaobingandbob
  • wuxiaobingandbob
  • 2015-03-27 11:12:51
  • 1436

Python中列表的del, remove, pop操作的区别

首先,remove 是删除首个符合条件的元素。并不是删除特定的索引。如下例:&amp;gt;&amp;gt;&amp;gt; a = [0, 2, 2, 3] &amp;gt;&amp;gt;&amp...
  • hhyiyuanyu
  • hhyiyuanyu
  • 2018-04-03 21:09:26
  • 2

python pop 和remove

python 中pop和remove都是原位操作,不同的是pop是按位进行删除,而remove是按照值来删除,而且remove不是吧含有该值的都删除而是只是删除第一次出现的值,另一个不同的是pop会返...
  • jixianqiuxue
  • jixianqiuxue
  • 2013-10-18 20:16:19
  • 1390

Python中append()和extend()的区别,pop()和remove()的区别

Python中append()和extend()的区别,pop()和remove()的区别
  • sushiqian
  • sushiqian
  • 2017-10-25 22:41:12
  • 249

python list中方法的时间复杂度

Operation Big-O Efficiency index [] O(1) index assignment O(1) append O(1)...
  • u011318721
  • u011318721
  • 2018-02-28 17:28:48
  • 402
    个人资料
    等级:
    访问量: 4
    积分: 26
    排名: 302万+
    文章分类
    文章存档