Python deque 双队列
deque 实现了两端都可以操作的队列,相当于双端队列,与列表很相似。
from collections import deque
#创建 deque
d1 = deque([1,2,3])
#单个数据入队
d1.append('a')
d1.appendleft('A')
print(d1)
#可迭代对象入队
d1.extend(['b','c'])
d1.extendleft(['B'])
print(d1)
#指定位置插入数据
d1.insert(2,'T') #插在 2 的位置(左数第 3 位)
print(d1)
deque(['A', 1, 2, 3, 'a'])
deque(['B', 'A', 1, 2, 3, 'a', 'b', 'c'])
deque(['B', 'A', 'T', 1, 2, 3, 'a', 'b', 'c'])
#出队
print(d1.pop()) #将队列尾部的数据弹出,并作为返回值
print(d1.popleft()) #将队列头部的数据弹出,并作为返回值
print(d1)
c
B
deque(['A', 'T', 1, 2, 3, 'a', 'b'])
#复制队列
d2 = d1.copy()
print(d2)
deque(['A', 'T', 1, 2, 3, 'a', 'b'])
#指定值的索引
print(d1.index('A'))
#指定值的数量
print(d1.count('A'))
0
1
#翻转
d2.reverse()
print(d2)
deque(['b', 'a', 3, 2, 1, 'T', 'A'])
#删除
d2.remove('T')
print(d2)
#全部清空
d2.clear()
print(d2)
deque(['b', 'a', 3, 2, 1, 'A'])
deque([])
#指定队列的长度
d3 = deque(maxlen=5)
d3.extend([1,2,3,4,5])
d3.append('A')
print(d3)
deque([2, 3, 4, 5, 'A'], maxlen=5)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
上一篇: Markdown 五分钟速成
下一篇: 彻底找到 Tomcat 启动速度慢的元凶
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论