前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >python:Queue模块

python:Queue模块

作者头像
py3study
发布2020-01-06 15:19:05
6610
发布2020-01-06 15:19:05
举报
文章被收录于专栏:python3python3

此模块一般用于和多线程配合

先进先出  q = Queue.Queue(maxsize)

后进先出  a = Queue.LifoQueue(maxsize)

优先级  Queue.PriorityQueue(maxsize)

Queue.qsize() 返回队列的大小

Queue.empty() 如果队列为空,返回True,反之False

Queue.full() 如果队列满了,返回True,反之False

Queue.full 与 maxsize 大小对应

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.join(): 实际上意味着等到队列为空,再执行别的操作

代码语言:javascript
复制
#-*-coding:utf-8-*-
import Queue
#创建一个队列(容器)先进先出,设置容器大小为6 只能添加6个数据或者元素
q = Queue.Queue(6)
#创建一个队列(容器),先进后出  后进先出
a = Queue.LifoQueue()
#print q.empty()
for i in range(5):
    q.put(i)       #put添加进这个队列
q.put((1, 2, 3))
print q.full()
while not q.empty():  #队列不为空就开始循环
    print q.get(),    #get 从另外一端删除
       
print
for i in range(5):
    a.put(i)         #向a队列添加数据
print a.get(0),      #a是后进先出
#############运行结果##################
>>> True
0 1 2 3 4 (1, 2, 3)
4
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-09-16 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档