如何从前面弹出列表元素?

时间:2017-09-16 03:37:26

标签: python

我有一个列表如下:

stack = [1,2,3,4,5]
stack.append(6)

print stack

stack.pop()

print stack # there output [1, 2, 3, 4, 5]

我有一个要求是我想从前面弹出,但它似乎没有这个功能。

3 个答案:

答案 0 :(得分:5)

有两种方法可以实现这一目标:

  1. 你可以在python中使用deque,它有一个popleft()方法:

    from collections import deque
    
    deque_list = deque([1,2,3,4,5])
    deque_list.popleft()
    
    print deque_list
    
  2. 它将在输出中显示deque([2, 3, 4, 5]),其用法类似于列表。

    1. 您还可以使用pop(0)从前面弹出:

      stack = [1,2,3,4,5]
      stack.pop(0)  # 1
      

答案 1 :(得分:5)

The documentation表示您可以指定索引

>>> stack = [1,2,3,4,5]
>>> stack.pop(0)
1
>>> stack
[2, 3, 4, 5]
>>>

答案 2 :(得分:3)

pop方法接受一个参数,该参数是pop的索引。默认值为-1,表示最后一个元素。要弹出第一个元素,你可以:

stack.pop(0)

检查this