设定一个长度为N的队列,当元素满时候,就自动丢弃最先进入队列的数据:
from collections import deque
q = deque(maxlen=3)
q.append(1)
q.append(2)
q.append(3)
print(q)
q.append(4)
print(q)
q.append(5)
print(q)
输出:
deque([1, 2, 3], maxlen=3)
deque([2, 3, 4], maxlen=3)
deque([3, 4, 5], maxlen=3)
以上程序代码等同于使用popleft():
from collections import deque
q = deque()
q.append(1)
q.append(2)
q.append(3)
print(q)
q.append(4)
q.popleft()
print(q)
q.append(5)
q.popleft()
print(q)
pop()方法将删除尾部数据。