我们以一个字符串为元素类型的 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])