這篇文章帶給大家的內容是關於python中使用deque保留最新N個元素的實現方法(程式碼),有一定的參考價值,有需要的朋友可以參考一下,希望對你有所幫助。
1、需求
做一個有限個數的歷史記錄。2、解決方案
deque(maxlen=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)
如果不指定佇列的大小,也就得到了一個無界限的佇列,可以在兩端執行新增和彈出操作,
程式碼:
from collections import deque q=deque() q.append(1) q.append(2) q.append(3) q.append(4) print(q) q.appendleft(5) print(q) print(q.pop()) print(q) print(q.popleft()) print(q)
結果:
deque([1, 2, 3, 4]) deque([5, 1, 2, 3, 4]) 4 deque([5, 1, 2, 3]) 5 deque([1, 2, 3])
以上是python中使用deque保留最新N個元素的實作方法(程式碼)的詳細內容。更多資訊請關注PHP中文網其他相關文章!