python queue函数_Python模块:queue
一、Python queue
Python queue模块有三种队列:
1、FIFO队列先进先出。
2、LIFO类似于堆,即先进后出。
3、还有一种是优先级队列级别越低越先出来。
针对这三种队列分别有三个构造函数:
1、class Queue.Queue(maxsize) FIFO
2、class Queue.LifoQueue(maxsize) LIFO
3、class Queue.PriorityQueue(maxsize) 优先级队列
介绍一下此包中的常用方法:
Queue.qsize():返回队列的大小。
Queue.empty():如果队列为空,返回True,反之False。
Queue.full():如果队列满了,返回True,反之False。
Queue.get([block[, timeout]]):获取队列,timeout是等待时间;默认是阻塞,并且没有超时设置。
Queue.get_nowait():相当Queue.get(False),非阻塞。
Queue.put(item):写入队列,timeout等待时间;默认是阻塞,并且没有超时设置。
Queue.put_nowait(item):相当Queue.put(item, False),非阻塞。
Queue.task_done():在完成一项工作之后,Queue.task_done()函数向任务已经完成的队列发送一个信号。
Queue.join():实际上意味着等到队列为空,再执行别的操作。
创建一个“队列”对象
# Python2
import Queue
myqueue = Queue.Queue(maxsize = 10)
# Python3
import queue
q = queue.Queue(maxsize = 10)
1
2
3
4
5
6
7
# Python2
importQueue
myqueue=Queue.Queue(maxsize=10)
# Python3
importqueue
q=queue.Queue(maxsize=10)
Queue.Queue类即是一个队列的同步实现。队列长度可为无限或者有限。可通过Queue的构造函数的可选参数maxsize来设定队列长度。如果maxsize小于1就表示队列长度无限。
将一个值放入队列中
q.put(10)
1
q.put(10)
调用队列对象的put()方法在队尾插入一个项目。put()有两个参数,第一个item为必需的,为插入项目的值;第二个block为可选参数,默认为1。如果队列当前为空且block为1,put()方法就使调用线程暂停,直到空出一个数据单元。如果block为0,put方法将引发Full异常。
将一个值从队列中取出
q.get()
1
q.get()
调用队列对象的get()方法从队头删除并返回一个项目。如果可选参数block是true,并且timeout是None,那么等到队列里面没有项时,会一直阻塞下去。如果block是true并且timeout为一个正数(单位是秒),那么在timeout秒之内没有可用的项获得,就会引发empty异常。如果block是false,那么不管timeout是多少,一旦没有可用项,就会引发空异常。
二、简单示例
>>> import queue
>>> q = queue.Queue(maxsize = 10)
>>> for i in range(9):
... q.put(i)
...
>>> while not q.empty():
... print(q.get())
...
0
1
2
3
4
5
6
7
8
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
>>>importqueue
>>>q=queue.Queue(maxsize=10)
>>>foriinrange(9):
...q.put(i)
...
>>>whilenotq.empty():
...print(q.get())
...
0
1
2
3
4
5
6
7
8
完结。。。
如果您觉得本站对你有帮助,那么可以支付宝扫码捐助以帮助本站更好地发展,在此谢过。
python queue函数_Python模块:queue相关推荐
- python hashlib函数_python模块——hashlib
python模块--hashlib hashlib模块是对许多hash函数的一个公共接口 new(name, string = '') 执行给定的hash函数来返回一个新的hash对象,使用给定 ...
- python日历函数_Python—日历函数—日历模块的常用函数,calendar,常见
Python-日历函数-日历模块的常用函数,calendar,常见 发表时间:2020-07-07 日历函数 calendar模块中提供了非常多的函数来处理年历和日历. 例如:打印2020年7月份的日 ...
- 机器学习之Python常用函数及模块整理
机器学习之Python常用函数及模块整理 1. map函数 2. apply函数 3. applymap函数 4. groupby函数 5. agg函数 6. lambda函数 7. rank函数 8 ...
- python模块的函数_Python模块及函数的使用
一. 1.模块是包含函数和其他语句的脚本文件,以".py"为后缀名,在Python中可以通过导入模块来使用模块中的函数或数据. 创建一个文件fun.py内容如下: def f1() ...
- python os函数_python os模块主要函数
使用python提供的os模块,对文件和目录进行操作,重命名文件,添加,删除,复制目录以及文件等. 一.文件目录常用函数 在进行文件和目录操作时,一般会用到以下几种操作. 1.获得当前:路径 在pyt ...
- python 封装函数_python封装函数
广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! python函数教程函数本身其实就相当于一个集装箱,她负责把我们之前写的那些代码 ...
- python include函数_python 库函数
python的内建函数和库函数的区别是什么? [区别]:标准库函数都需要import xxx才能取得.内建函数都在__builtins__里面,在global里直接就能用. [补充]:1.python ...
- python log函数_Python log10() 函数
Python log10() 函数 描述 log10() 方法返回以10为基数的x对数. 语法 以下是 log10() 方法的语法:import math math.log10( x ) 注意:log ...
- python find函数_Python 速学!不懂怎么入门python的小白看这篇就够了!
Python是一种非常流行的脚本语言,而且功能非常强大,几乎可以做任何事情,比如爬虫.网络工具.科学计算.树莓派.Web开发.游戏等各方面都可以派上用场.同时无论在哪种平台上,都可以用 Python ...
最新文章
- 联想计算机农村,农村的联想
- js中比较时间字串大小
- Charles抓包工具_基本功能
- poj 2485 Highways prim最小生成树 基础 球最小生成树中得最大边
- 华为交换机查看发光收光
- 翻译:算法常见的模数1000000007 模数10 ^ 9 + 7
- 2022华为软件精英挑战赛比赛经历
- 访问图像元素(imagedata widthstep)
- 网络收藏夹--用来收藏我经常访问的网站
- 阿里java面试流程_阿里巴巴JAVA开发工程师面试经验
- Java为PDF文档加密
- 知数堂MySQL DBA在线培训第八期招生中
- 体积小性能强悍能吃鸡的电脑主机 NUC8I7HVK
- 主成分分析——PCA
- 二进制与十进制间的转化
- 面部清洁湿巾行业现状调研及趋势分析报告
- a king读后感 love of the_作业:读后感~Love, The One Creative Force~
- PID调节之比例(P)调节
- 【知识梳理】白话一下大数据治理、Hadoop生态的事情,给只想浅了解的同学参考下
- 三极管共集共射共基电路区分