Python 技巧(三)—— list 删除一个元素的三种做法

我们以一个字符串为元素类型的 list 为例,进行列表元素的删除:

>>> l = ['no surfing', 'flippers']
  • 1

法一:remove(val)

>>> l.remove('no surfing')
>>> l
['flippers']
  • 1
  • 2
  • 3
  • (1)remove() 的参数是具体的元素值,而不是索引,
  • (2)如果知道索引,如何使用 remove 删除该索引上的元素值,

    >>> l.remove(l[1])
    • 1

    这样做是很大的风险的,因为 list 允许重复,remove() 删除的列表中第一个和参数值相等的元素

法二:pop(0)

  • (1)pop() 接收的是索引,无参的情况下删除的是最后一个元素(典型的栈的特性

  • (2)pop() 存在返回值,返回的是删除的元素值

    l.pop() <==> l.pop(-1)
    • 1
  • (3)list 的 append()(添加到尾部),pop()(从尾部弹出),成功地将 list 变成了 stack

法三:del(l[0])

>>> del(l[0])
posted @ 2018-02-25 13:47  andyzhang-  阅读(156167)  评论(0编辑  收藏  举报