python remove del pop 的区别

1.remove

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

例子1:

>>> a = range(10)
>>> a
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> a.remove(2)
>>> a
[0, 1, 3, 4, 5, 6, 7, 8, 9]  

例子2: (只删除第一个匹配的2)

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

  

2.del

  而对于 del 来说,它是根据索引(元素所在位置)来删除的,没有返回值

>>> a = range(10)
>>> del a[1]
>>> a
[0, 2, 3, 4, 5, 6, 7, 8, 9]
>>> del a
>>> a
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'a' is not defined

  

3.pop

  pop根据索引(元素所在位置)来删除的,有返回值,只能删除元素,不能删除整个list

>>> a
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> a = range(10)
>>> a.pop(-1)
9
>>> a
[0, 1, 2, 3, 4, 5, 6, 7, 8]

  

posted @ 2017-08-14 16:28  悉达多尊  阅读(277)  评论(0编辑  收藏  举报