python标准库中带有一个Queue模块,顾名思义,队列。该模块也衍生出一些基本队列不具有的功能。

我们先看一下队列的方法:

put 存数据
get 取数据
empty 判断队列是否为空
qsize 显示队列中真实存在的元素长度
maxsize 最大支持队列长度
join 等到队列为空,该行语句下面的语句才会执行
full 检查队列是否已满

单向队列

import queue

q = queue.Queue(5)
print(q.maxsize)
q.put(343)
q.put(23)
q.put(432) print(q.get())
q.put(44)
q.put(35)
q.put(235)
print(q.full()) #判断队列当前大小是否等于约定队列大小
print(q.qsize())

先进后出队列

q = queue.LifoQueue(5)
q.put(343)
q.put(23)
q.put(432) print(q.get())

优先级队列

优先级队列put进去的是一个元祖,(优先级,数据),优先级数字越小,优先级越高

q = queue.PriorityQueue(5)
q.put((5, 5454))
q.put((5, 532566))
q.put((3, 555))
q.put((7, 344))
print(q.get())
print(q.get())

注意:如果有两个元素优先级是一样的,那么在出队的时候是按照先进先出的顺序的。

双端队列

q = queue.deque()
q.append(1) #这个方法是在尾部增加
q.append(2)
q.append(3) q.appendleft(4) #这个方法是在首部增加
q.insert(2,5) #指定位置插入元素 print(q.pop()) #出队是尾部先出

python3学习-Queue模块的更多相关文章

  1. Python3.5 queue模块详解

    queue介绍 queue是python中的标准库,俗称队列,可以直接import 引用,在python2.x中,模块名为Queue 在python中,多个线程之间的数据是共享的,多个线程进行数据交换 ...

  2. (转)Python3.5 queue模块详解

    原文:https://www.cnblogs.com/CongZhang/p/5274486.html queue介绍 queue是python中的标准库,俗称队列,可以直接import 引用,在py ...

  3. python3学习-lxml模块

    在爬虫的学习中,我们爬取网页信息之后就是对信息项匹配,这个时候一般是使用正则.但是在使用中发现正则写的不好的时候不能精确匹配(这其实是自己的问题!)所以就找啊找.想到了可以通过标签来进行精确匹配岂不是 ...

  4. python3学习-logging模块

    1.logging模块的使用非常简单,引入模块就可以使用. import logging logging.debug('This is debug message') logging.info('Th ...

  5. python3学习-pickle模块

    pickle提供了一个简单的持久化功能.可以将对象以文件的形式存放在磁盘上. 基本接口: pickle.dump(obj, file, [,protocol]) 注解:将对象obj保存到文件file中 ...

  6. Python3学习笔记(urllib模块的使用)转http://www.cnblogs.com/Lands-ljk/p/5447127.html

    Python3学习笔记(urllib模块的使用)   1.基本方法 urllib.request.urlopen(url, data=None, [timeout, ]*, cafile=None,  ...

  7. Python2.7 Queue模块学习

    前面了解了一下threading,发现一般都是和queue模块配合使用的,queue产生一个队列,队列模式有3种,针对这三种队列分别有三个构造函数: 1 FIFO队列先进先出:class Queue. ...

  8. Python3学习(3)-高级篇

    Python3学习(1)-基础篇 Python3学习(2)-中级篇 Python3学习(3)-高级篇 文件读写 源文件test.txt line1 line2 line3 读取文件内容 f = ope ...

  9. Python3学习(2)-中级篇

    Python3学习(1)-基础篇 Python3学习(2)-中级篇 Python3学习(3)-高级篇 切片:取数组.元组中的部分元素 L=['Jack','Mick','Leon','Jane','A ...

随机推荐

  1. while循环的初始以及编码的初始

    whlie循环 why:比如要多次重复做一件事情,如歌曲列表循环,银行卡密码错误多次重复! what:whlie无限循环. how: ##基本结构while 条件:    循环体 基本原理 循环如何终 ...

  2. .NET中生成动态验证码

    .NET中生成动态验证码 验证码是图片上写上几个字,然后对这几个字做特殊处理,如扭曲.旋转.修改文字位置,然后加入一些线条,或加入一些特殊效果,使这些在人类能正常识别的同时,机器却很难识别出来,以达到 ...

  3. 01(a)一元函数_多元函数_无约束极值问题的求解

    1. 一元函数的极值问题  (函数光滑) 对于一个一元函数$f(x)$,怎么才能找出它的极值呢? 1.1根据定义:如果存在一点${{x}_{0}}$,在点${{x}_{0}}$的某个领域$U({{x} ...

  4. find文件删除

    find /root/title/test -type f -name '*.txt' -exec rm {} \;   查找并删除test文件夹下所有txt文件 find /root/title/t ...

  5. hdfs文件写入kafka集群

    1. 场景描述 因新增Kafka集群,需要将hdfs文件写入到新增的Kafka集群中,后来发现文件不多,就直接下载文件到本地,通过Main函数写入了,假如需要部署到服务器上执行,需将文件读取这块稍做修 ...

  6. 【Download error:TOO MANY REQUESTS】&【TypeError:excepted string or buffer】

    <用python写网络爬虫>,1.4.4链接爬虫,运行时,遇到错误: Download error:TOO MANY REQUESTS Traceback(most recent call ...

  7. Python爬虫学习代码

    [1]用一个简单的程序来显示Python的数字类型. code: class ShowNumType(object): def __init__(self): self.showInt() self. ...

  8. 个人永久性免费-Excel催化剂功能第45波-逻辑判断函数增强

    自定义函数的最大的作用是可以按需定制,在Excel的原生函数不提供的场景时,传统方法需要使用大量的嵌套函数去实现,实在太累,今天Excel催化剂再次送上一波绝对十分常用的函数逻辑判断类函数给大家使用! ...

  9. 2019杭电多校第一场hdu6581 Vacation

    Vacation 题目传送门 update(O(n)) 看了那个O(n)的方法,感觉自己想的那个O(nlogn)的好傻,awsl. 0车最终通过停车线的时候,状态一定是某个车堵住后面的所有车(这个车也 ...

  10. K2 smarforms 控件整理

    K2 Community – Market – Smatform Controls l   K2 blackpearl 1.    Drag and Drop Upload Control http: ...