詳解 class 可見 超過 ont list 長度 TP mil

deque模塊是python標準庫collections中的一項,它提供了兩端都可以操作的序列,這意味著,在序列的前後你都可以執行添加或刪除操作。

1.創建deque序列:

from collections import deque

d=deque()

2.deque提供了類似list的操作方法:

d=deque()

d.append(3)

d.append(8)

d.append(1)

那麽此時

d=deque([3,8,1]),len(d)=3,d[0]=3,d[-1]=1

3.兩端都使用pop:

d=deque(‘12345’)

那麽

d=deque([1, 2, 3, 4, 5])

d.pop()拋出的是’5’,d.leftpop()拋出的是’1’,可見默認pop()拋出的是最後一個元素。

4.限制deque的長度

d=deque(maxlen=20)

for i in range(30):

    d.append(str(i))

此時d的值為

d=deque([10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29], maxlen=20)

,可見當限制長度的deque增加超過限制數的項時,另一邊的項會自動刪除。

5.添加list各項到deque中:

d=deque([1,2,3,4,5])

d.extend([0])

那麽此時

d=deque([1,2,3,4,5,0])

d.extendleft([6,7,8])

此時

d=deque([8, 7, 6, 1, 2, 3, 4, 5, 0])

26 python 中deque模塊詳解