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 相关文章推荐
Python3.x和Python2.x的区别介绍
Feb 12 Python
Python实现二叉树结构与进行二叉树遍历的方法详解
May 24 Python
python+matplotlib绘制简单的海豚(顶点和节点的操作)
Jan 02 Python
Python使用Scrapy爬虫框架全站爬取图片并保存本地的实现代码
Mar 04 Python
对python抓取需要登录网站数据的方法详解
May 21 Python
matplotlib savefig 保存图片大小的实例
May 24 Python
Django 静态文件配置过程详解
Jul 23 Python
Django中在xadmin中集成DjangoUeditor过程详解
Jul 24 Python
PyQt 图解Qt Designer工具的使用方法
Aug 06 Python
利用Pytorch实现简单的线性回归算法
Jan 15 Python
套娃式文件夹如何通过Python批量处理
Aug 23 Python
python 8种必备的gui库
Aug 27 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
PHP控制网页过期时间的代码
2008/09/28 PHP
PHP中fwrite与file_put_contents性能测试代码
2013/08/02 PHP
php-beanstalkd消息队列类实例分享
2017/07/19 PHP
浅谈PHP匿名函数和闭包
2019/03/08 PHP
CI框架教程之优化验证码机制详解【验证码辅助函数】
2019/04/16 PHP
div移动 输入框不能输入的问题
2009/11/19 Javascript
通过DOM脚本去设置样式信息
2010/09/19 Javascript
JS保存、读取、换行、转Json报错处理方法
2013/06/14 Javascript
jQuery.extend()的实现方式详解及实例
2013/06/29 Javascript
JS实现简单的顶部定时关闭层效果
2014/06/15 Javascript
TinyMCE提交AjaxForm获取不到数据的解决方法
2015/03/05 Javascript
jQuery插件bxSlider实现响应式焦点图
2015/04/12 Javascript
js闭包所用的场合以及优缺点分析
2015/06/22 Javascript
Bootstrap Paginator分页插件使用方法详解
2016/05/30 Javascript
利用node.js搭建简单web服务器的方法教程
2017/02/20 Javascript
在小程序Canvas中使用measureText的方法示例
2018/10/19 Javascript
javascript对HTML字符转义与反转义
2018/12/13 Javascript
微信小程序自定义联系人弹窗
2020/05/26 Javascript
vue修改Element的el-table样式的4种方法
2020/09/17 Javascript
Python中的defaultdict模块和namedtuple模块的简单入门指南
2015/04/01 Python
Python3读取文件常用方法实例分析
2015/05/22 Python
Python基础中所出现的异常报错总结
2016/11/19 Python
详解python中requirements.txt的一切
2017/03/03 Python
Python入门之三角函数全解【收藏】
2017/11/08 Python
python opencv实现切变换 不裁减图片
2018/07/26 Python
对python周期性定时器的示例详解
2019/02/19 Python
python opencv摄像头的简单应用
2019/06/06 Python
Python GUI编程 文本弹窗的实例
2019/06/11 Python
基于树莓派的语音对话机器人
2019/06/17 Python
中间件分为哪几类
2016/09/18 面试题
高校辅导员推荐信范文
2013/12/25 职场文书
个人现实表现材料
2014/02/04 职场文书
2014年反洗钱工作总结
2014/11/22 职场文书
人代会简报
2015/07/21 职场文书
领导莅临指导欢迎词
2015/09/30 职场文书
MySQL 分页查询的优化技巧
2021/05/12 MySQL