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 相关文章推荐
在Python中使用HTML模版的教程
Apr 29 Python
Python实现telnet服务器的方法
Jul 10 Python
Python计算已经过去多少个周末的方法
Jul 25 Python
Python编程中的文件读写及相关的文件对象方法讲解
Jan 19 Python
Python如何实现文本转语音
Aug 08 Python
python中星号变量的几种特殊用法
Sep 07 Python
利用python实现xml与数据库读取转换的方法
Jun 17 Python
java中两个byte数组实现合并的示例
May 09 Python
python3 json数据格式的转换(dumps/loads的使用、dict to str/str to dict、json字符串/字典的相互转换)
Apr 01 Python
python tools实现视频的每一帧提取并保存
Mar 20 Python
python轮询机制控制led实例
May 03 Python
keras K.function获取某层的输出操作
Jun 29 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新手上路(二)
2006/10/09 PHP
php中导出数据到excel时数字变为科学计数的解决方法
2013/02/03 PHP
yii2超好用的日期组件和时间组件
2016/05/05 PHP
smarty中改进truncate使其支持中文的方法
2016/05/30 PHP
PHP通过get方法获得form表单数据方法总结
2018/09/12 PHP
Laravel6.18.19如何优雅的切换发件账户
2020/06/14 PHP
基于Web标准的UI组件 — 树状菜单(2)
2006/09/18 Javascript
用JavaScript获取网页中的js、css、Flash等文件
2006/12/20 Javascript
理解JavaScript中的对象 推荐
2011/01/09 Javascript
js读取配置文件自写
2014/02/11 Javascript
Javascript中函数名.length属性用法分析(对比arguments.length)
2016/09/16 Javascript
js实现消息滚动效果
2017/01/18 Javascript
JS对象是否拥有某属性如何判断
2017/02/03 Javascript
微信小程序页面间值传递的两种方法
2018/11/26 Javascript
微信小程序+腾讯地图开发实现路径规划绘制
2019/05/22 Javascript
个人小程序接入支付解决方案
2019/05/23 Javascript
微信小程序如何使用canvas二维码保存至手机相册
2019/07/15 Javascript
一篇文章带你从零快速上手Rollup
2020/09/07 Javascript
python使用Tkinter显示网络图片的方法
2015/04/24 Python
python判断字符串是否是json格式方法分享
2017/11/07 Python
关于python之字典的嵌套,递归调用方法
2019/01/21 Python
python如何实现视频转代码视频
2019/06/17 Python
Python如何进行时间处理
2020/08/06 Python
浅谈html5增强的页面元素
2016/06/14 HTML / CSS
体育纪念品、亲笔签名的体育收藏品:Steiner Sports
2020/07/31 全球购物
餐饮加盟计划书
2014/01/10 职场文书
十月份红领巾广播稿
2014/01/22 职场文书
《猫》教学反思
2014/02/26 职场文书
行政专员的岗位职责
2014/03/10 职场文书
文明美德伴我成长演讲稿
2014/05/12 职场文书
自愿离婚协议书范本
2014/09/13 职场文书
六查六看个人剖析材料
2014/10/14 职场文书
西安导游词
2015/02/12 职场文书
中国古风插画师排行榜:夏达第一,第三是阴阳师姑获鸟皮肤创作者
2022/03/18 国漫
Spring Data JPA框架Repository自定义实现
2022/04/28 Java/Android
SQL Server中搜索特定的对象
2022/05/25 SQL Server