最近在pythonTip做题的时候,遇到了deque类,以前对其不太了解,现在特此总结一下

deque类是python标准库collections模块中的一项,它提供了两端都可以操作的序列,这意味着,在序列的前后你都可以执行添加或删除操作。

1.创建deque序列:

from collections import deque

d=deque()

2.deque提供了类似list的操作方法:

d=deque()

d.append(3)

d.append(8)

d.append(1)

那么此时d=deque([3,8,1]),len(d)=3,d[0]=3,d[-1]=1

3.两端都使用pop:

d=deque(‘12345’)

那么d=deque(['1', '2', '3', '4', '5'])

d.pop()抛出的是’5’,d.leftpop()抛出的是’1’,可见默认pop()抛出的是最后一个元素。

4.限制deque的长度

d=deque(maxlen=20)

for i in range(30):

d.append(str(i))

此时d的值为d=deque(['10', '11', '12', '13', '14', '15', '16', '17', '18', '19', '20', '21', '22', '23', '24', '25', '26', '27', '28', '29'], maxlen=20),可见当限制长度的deque增加超过限制数的项时,另一边的项会自动删除。

5.添加list各项到deque中:

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

d.extend([0])

那么此时d=deque([1,2,3,4,5,0])

d.extendleft([6,7,8])

此时d=deque([8, 7, 6, 1, 2, 3, 4, 5, 0])

通过以上的一些操作,我们大致可以了解deque()的性质了。

转载自:https://blog.csdn.net/qins_superlover/article/details/44338415

python deque_python中deque类详解相关推荐

  1. 站长在线Python教程精讲:在Python函数中的局部变量详解

    欢迎你来到站长在线的站长学堂学习Python知识,本文学习的是<在Python函数中的局部变量详解>.本文的主要内容有:变量的作用域的概念.局部变量的概念.局部变量的举例. 目录 1.变量 ...

  2. php closure 类,PHP中Closure类详解

    本文主要和大家分享PHP中Closure类详解,PHP Closure 类是用于代表匿名函数的类,匿名函数(在 PHP 5.3 中被引入)会产生这个类型的对象,Closure类摘要如下:Closure ...

  3. Python开发中的接口详解和使用方法

    在服务器环境实际开发过程中,往往要通过写接口来请求或者发送数据,那么到底什么是接口,如何通过调用接口发送或者请求数据呢? 一.接口的定义 简单来说,域名(地址)带上参数就是一个接口,然后通过调用此接口 ...

  4. python夯实基础日记-类详解

    97.方法没有重载_方法的动态性 方法没有重载 在其他语言中,可以定义多个重名的方法,只要保证方法签名唯一即可.方法签名包含3个部分:方法名.参数数量.参数类型. Python中,方法的的参数没有类型 ...

  5. 同步锁 php,python线程中同步锁详解

    这篇文章主要为大家详细介绍了python线程中同步锁的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 在使用多线程的应用下,如何保证线程安全,以及线程之间的同步,或者访问共享变量等问题是十 ...

  6. Unity中Time类详解

    一:前言 Unity中时间类 二:常用 --Time.time 从游戏开始后所运行的时间,会受时间缩放比例的影响 --Time.unscaledTime 从游戏开始后所运行的时间,不受时间缩放比例的影 ...

  7. Python 多进程 multiprocessing.Pool类详解

    multiprocessing模块 multiprocessing包是Python中的多进程管理包.它与 threading.Thread类似,可以利用multiprocessing.Process对 ...

  8. Python快速上手系列--类--详解篇

    本章是自动化测试的真正开始,因为在后续的过程中,你会接触到unittest框架,pytest框架,而不仅仅只是写一个函数+selenium脚本这么简单了. 1.创建类 1.1.了解类 我们首先了解一下 ...

  9. java remove removeat_2016.3.12 Java中ArrayList类详解(转)

    1.什么是ArrayList ArrayList就是传说中的动态数组,用MSDN中的说法,就是Array的复杂版本,它提供了如下一些好处: 动态的增加和减少元素 实现了ICollection和ILis ...

最新文章

  1. 【Tools】Ubuntu18.04破解root密码
  2. redis 哨兵_Redis哨兵机制的原理介绍
  3. Arrays.asList 方法注意事项
  4. 运行HelloJersey遇到异常解决方法
  5. python 服务发现_什么是服务发现?
  6. 网络传输协议都有什么
  7. 2021年PMP考试模拟题11(含答案解析)
  8. python信息安全书籍_GitHub - riusksk/secbook: 信息安全从业者书单推荐
  9. linux下Intel无线网卡驱动安装
  10. KSO-在js中文本框只允许输入数字
  11. idea本地项目上传至远程仓库及一些常见问题的解决办法
  12. Java基础-面试题精华(2021最新)
  13. 7-1 计算π的值 (10分) java
  14. 揭秘家用路由器0day漏洞挖掘技术-Chapter1-读书笔记
  15. Python提取文件夹中的所有文件名输出到excel
  16. Planner 5D for Mac 4.8.2 2D/3D室内设计工具
  17. 精益研发设计,从源头提升质量、降低成本
  18. php 7.1.0 下载,PHP7正式版下载|PHP7新特性|PHP32位下载7.1.0-游迅网
  19. 以太网转RS485串口计数器WiFI模块 LED灯光控制器IBF165
  20. 初学者之路——————水下通信

热门文章

  1. MySQL的基础操作命令_mysql的基本操作命令
  2. Java 算法 新生舞会
  3. 中移4G模块-ML302-OpenCpu开发-CJSON
  4. 中移4G模块-ML302-OpenCpu开发-GPIO
  5. java虚拟机可以处理_Java虚拟机对类加载的处理机制
  6. python计算两个时间间隔准确的天、月、年之差
  7. django实现上传文件并保存
  8. 八 .数据库(多表查询)
  9. BZOJ2654: tree 二分答案+最小生成树
  10. es6 数组去重,数组里面的对象去重