天天看點

Python——deque

deque包含在collections子產品中,主要包含的方法:append、appendleft、clear、copy、count、extend、extendleft、index、insert、pop、popleft、remove、reverse、rotate等,通過help(deque)可以檢視相應的使用說明。

隊列的定義和使用:

>>> from collections import deque
>>> q=deque(range())
>>> q
deque([, , , , , , , , , ])
>>> 
           

隊列追加元素:

>>> q.append()
>>> q
deque([, , , , , , , , , , ])
>>> q.appendleft(-)
>>> q
deque([-, , , , , , , , , , , ])
>>> 
           

隊列出隊操作:

>>> q.pop()

>>> q
deque([-, , , , , , , , , , ])
>>> q.popleft()
-
>>> q
deque([, , , , , , , , , ])
>>> 
           

移動隊列元素:

>>> q
deque([, , , , , , , , , ])
>>> q.rotate()
>>> q
deque([, , , , , , , , , ])
>>> q.rotate()
>>> q
deque([, , , , , , , , , ])
>>> q.rotate(-)
>>> q
deque([, , , , , , , , , ])
>>> 
           

注:rotate(n)預設情況下是将隊尾的一個元素移到隊首,若n大于0,則是将隊尾的n個元素移到隊首,若n小于0,則是将隊首的n個元素移動到對尾

擷取隊列元素下标:

>>> q.append(-)
>>> q
deque([, , , , , , , , , , -])
>>> q.index(-)

>>>