python3 deque 双向队列创建与使用方法分析


Posted in Python onMarch 24, 2020

本文实例讲述了python3 deque 双向队列创建与使用方法。分享给大家供大家参考,具体如下:

创建双向队列

import collections
d = collections.deque()

append(往右边添加一个元素)

import collections
d = collections.deque()
d.append(1)
d.append(2)
print(d)

#输出:deque([1, 2])

appendleft(往左边添加一个元素)

import collections
d = collections.deque()
d.append(1)
d.appendleft(2)
print(d)

#输出:deque([2, 1])

clear(清空队列)

import collections
d = collections.deque()
d.append(1)
d.clear()
print(d)

#输出:deque([])

copy(浅拷贝)

import collections
d = collections.deque()
d.append(1)
new_d = d.copy()
print(new_d)

#输出:deque([1])

count(返回指定元素的出现次数)

import collections
d = collections.deque()
d.append(1)
d.append(1)
print(d.count(1))

#输出:2

extend(从队列右边扩展一个列表的元素)

import collections
d = collections.deque()
d.append(1)
d.extend([3,4,5])
print(d)

#输出:deque([1, 3, 4, 5])

extendleft(从队列左边扩展一个列表的元素)

import collections
d = collections.deque()
d.append(1)
d.extendleft([3,4,5])
print(d)

# #输出:deque([5, 4, 3, 1])

index(查找某个元素的索引位置)

import collections
d = collections.deque()
d.extend(['a','b','c','d','e'])
print(d)
print(d.index('e'))
print(d.index('c',0,3)) #指定查找区间

#输出:deque(['a', 'b', 'c', 'd', 'e'])
#     4
#     2

insert(在指定位置插入元素)

import collections
d = collections.deque()
d.extend(['a','b','c','d','e'])
d.insert(2,'z')
print(d)

#输出:deque(['a', 'b', 'z', 'c', 'd', 'e'])

pop(获取最右边一个元素,并在队列中删除)

import collections
d = collections.deque()
d.extend(['a','b','c','d','e'])
x = d.pop()
print(x,d)

#输出:e deque(['a', 'b', 'c', 'd'])

popleft(获取最左边一个元素,并在队列中删除)

import collections
d = collections.deque()
d.extend(['a','b','c','d','e'])
x = d.popleft()
print(x,d)

#输出:a deque(['b', 'c', 'd', 'e'])

remove(删除指定元素)

import collections
d = collections.deque()
d.extend(['a','b','c','d','e'])
d.remove('c')
print(d)

#输出:deque(['a', 'b', 'd', 'e'])

reverse(队列反转)

import collections
d = collections.deque()
d.extend(['a','b','c','d','e'])
d.reverse()
print(d)

#输出:deque(['e', 'd', 'c', 'b', 'a'])

rotate(把右边元素放到左边)

import collections
d = collections.deque()
d.extend(['a','b','c','d','e'])
d.rotate(2)  #指定次数,默认1次
print(d)

#输出:deque(['d', 'e', 'a', 'b', 'c'])

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
在Mac OS上部署Nginx和FastCGI以及Flask框架的教程
May 02 Python
Python使用CMD模块更优雅的运行脚本
May 11 Python
Python实现生成随机数据插入mysql数据库的方法
Dec 25 Python
Python基础之条件控制操作示例【if语句】
Mar 23 Python
Pycharm中出现ImportError:DLL load failed:找不到指定模块的解决方法
Sep 17 Python
关于numpy数组轴的使用详解
Dec 05 Python
Python如何实现小程序 无限求和平均
Feb 18 Python
基于Numba提高python运行效率过程解析
Mar 02 Python
python网络编程:socketserver的基本使用方法实例分析
Apr 09 Python
Python 将 QQ 好友头像生成祝福语的实现代码
May 03 Python
Python使用Selenium实现淘宝抢单的流程分析
Jun 23 Python
PyCharm+Miniconda3安装配置教程详解
Feb 16 Python
pyqt5 QlistView列表显示的实现示例
Mar 24 #Python
Python多线程操作之互斥锁、递归锁、信号量、事件实例详解
Mar 24 #Python
PyQt5中向单元格添加控件的方法示例
Mar 24 #Python
Python多线程Threading、子线程与守护线程实例详解
Mar 24 #Python
PYQT5 vscode联合操作qtdesigner的方法
Mar 24 #Python
ubuntu 安装pyqt5和卸载pyQt5的方法
Mar 24 #Python
Python socket连接中的粘包、精确传输问题实例分析
Mar 24 #Python
You might like
基于magic_quotes_gpc与magic_quotes_runtime的区别与使用介绍
2013/04/22 PHP
php获取twitter最新消息的方法
2015/04/14 PHP
php ajax实现文件上传进度条
2016/03/29 PHP
浅析PHP数据导出知识点
2018/02/17 PHP
用ADODB.Stream转换
2007/01/22 Javascript
关于query Javascript CSS Selector engine
2013/04/12 Javascript
利用js实现遮罩以及弹出可移动登录窗口
2013/07/08 Javascript
JavaScript验证电子邮箱的函数
2014/08/22 Javascript
JS获取当前网页大小以及屏幕分辨率等
2014/09/05 Javascript
JS实现仿苹果底部任务栏菜单效果代码
2015/08/28 Javascript
Javascript将数字转化成为货币格式字符串
2016/06/22 Javascript
Javascript基础学习笔记(菜鸟必看篇)
2016/07/22 Javascript
解决JQuery全选/反选第二次失效的问题
2017/10/11 jQuery
JavaScript实现删除数组重复元素的5种常用高效算法总结
2018/01/18 Javascript
Vue实现购物车详情页面的方法
2019/08/20 Javascript
简单了解JS打开url的方法
2020/02/21 Javascript
JavaScript实现京东快递单号查询
2020/11/30 Javascript
[01:05:29]DOTA2-DPC中国联赛 正赛 PSG.LGD vs Aster BO3 第二场 1月24日
2021/03/11 DOTA
spark dataframe 将一列展开,把该列所有值都变成新列的方法
2019/01/29 Python
Django如何将URL映射到视图
2019/07/29 Python
Python统计时间内的并发数代码实例
2019/12/28 Python
Python socket处理client连接过程解析
2020/03/18 Python
python实现单张图像拼接与批量图片拼接
2020/03/23 Python
django Layui界面点击弹出对话框并请求逻辑生成分页的动态表格实例
2020/05/12 Python
Python设计密码强度校验程序
2020/07/30 Python
Python内存泄漏和内存溢出的解决方案
2020/09/26 Python
pycharm配置python 设置pip安装源为豆瓣源
2021/02/05 Python
中文系师范生自荐信
2013/10/01 职场文书
航空大学应届生求职信
2013/11/10 职场文书
拉拉队口号
2014/06/16 职场文书
党的群众路线教育实践活动个人对照检查材料(乡镇)
2014/11/05 职场文书
迁徙的鸟观后感
2015/06/09 职场文书
2016廉政教育学习心得体会
2016/01/25 职场文书
zabbix监控mysql的实例方法
2021/06/02 MySQL
nginx刷新页面出现404解决方案(亲测有效)
2022/03/18 Servers
Z-Order加速Hudi大规模数据集方案分析
2022/03/31 Servers