python3 deque作用

Posted Z_Agent

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python3 deque作用相关的知识,希望对你有一定的参考价值。

给出第一印象:deque是一个双向队列 

from collections import deque

a = deque()
a = deque(maxlen = 30) #限制长度 a.append(
1) a.append(2) a.appendleft(3) print(a) Out[8]: deque([3, 1, 2])

 

a.clear()

Out[11]: deque([])

调用clear方法后,此时与刚创建时的状态一致

a.pop()
Out[37]: 2

a
Out[38]: deque([3, 1])

可见pop弹出最右端元素,pop里无多余参数

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

a.popleft()
Out[42]: 1

a
Out[43]: deque([2, 3, 4, 5])

popleft弹出最左元素

a=deque([2,2,2,3,4,5,6])

a.count(2)
Out[49]: 3
a.extend([2,3])

Out[57]: deque([2, 2, 2, 3, 4, 5, 6, 2, 3])

a.append([2,3])

Out[59]: deque([2, 2, 2, 3, 4, 5, 6, 2, 3, [2, 3]])
a
Out[66]: deque([2, 2, 2, 3, 4, 5, 6, 2, 3, [2, 3]])

a.index(3)
Out[67]: 3

a.index(3,2,5)
Out[68]: 3

但是index只能返回找到的第一个元素的索引

a.insert(2,s)

运行后,‘s‘的索引为2

a.remove(2)

删除指定元素,但是只从左至右删除一个

a=deque([1,2,3,4,5])
a.reverse()

a
Out[80]: deque([5, 4, 3, 2, 1])

reverse反转

a=deque([1,2,3,4,5])
a.rotate(3)

a
Out[89]: deque([3, 4, 5, 1, 2])

把最后(n)个元素放在前面,但没有翻转顺序

 

以上是关于python3 deque作用的主要内容,如果未能解决你的问题,请参考以下文章

Python3-笔记-B-006-数据结构-双向队列deque

python3的deque

学习笔记:python3,代码片段(2017)

python-geoip 在 python3.4 上不起作用?

scrapy主动退出爬虫的代码片段(python3)

scrapy按顺序启动多个爬虫代码片段(python3)