Python 使用列表中的pop()有什么意义?

Python 使用列表中的pop()有什么意义?,python,list,Python,List,我理解它是如何工作的,但我看不出它在实际程序中的用途。如果他们真的实现了pop()方法,为什么他们不也实现push()呢?那么append()呢?这相当于推送 其全部目的是在方便的时候快速使用列表作为堆栈。它还可以作为一个队列,并结合使用方法pop(0)和append()。尽管对于这种特定情况,最好的选择是从集合中选择deque。他们确实实现了推送,但他们将功能拆分为list.insert()和list.append() list.append()相当于将值推到末尾list.insert()与带

我理解它是如何工作的,但我看不出它在实际程序中的用途。如果他们真的实现了pop()方法,为什么他们不也实现push()呢?

那么
append()
呢?这相当于
推送


其全部目的是在方便的时候快速使用列表作为堆栈。它还可以作为一个队列,并结合使用方法
pop(0)
append()
。尽管对于这种特定情况,最好的选择是从
集合中选择
deque

他们确实实现了推送,但他们将功能拆分为
list.insert()
list.append()

list.append()
相当于将值推到末尾
list.insert()
与带有索引的
list.pop()相反;在给定索引处插入给定值

list.pop()
方法是
del listobject[index]
的替代方法,因为它返回要删除的索引处的值


请注意,Python列表不仅限于用作堆栈或队列,而且
list.pop()
list
类型的后续添加,以提高删除和返回的效率。

否则,pop很烦人:

popped = my_list[-1]
my_list = my_list[:-1]
而不仅仅是:

popped = my_list.pop()
你问题的第二部分已经被其他人回答了——它只是被称为append


另请参见

我猜您在谈论python?如果是,我同意。有左和右的概念,你需要知道哪一个是“附加”的。我觉得有点复杂。+1我完全忘了插入代码了(哇,太棒了。你回答了我所有的问题。我现在完全明白了。谢谢!或者
del my_list[-1]
@MartijnPieters是的,我觉得这样更有效率。是的,有点。当然可以删除最后一个元素。删除第一个元素仍然很有效,值得一试,但在内部列表确实需要重建;这个问题很容易被看作是那个问题的翻版。另外,pop()可能有一个索引。您不希望只为一个元素使用一个新列表来消耗ram。