26 python 中deque模塊詳解
阿新 • • 發佈:2018-07-01
詳解 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模塊詳解