先进先出队列,优先级队列以及后进先出队列

from queue import Queue#先进先出队列
from queue import PriorityQueue #优先级队列---继承了Queue
from queue import LifoQueue#后进先出

#创建队列
q = Queue(4)

#放数据
q.put('成员1')
q.put('成员2')
q.put('成员3')
print(q.full())#判断队列是否已满,满为True,不满为False
print(q.empty())#判断队列是否为空,空为True,非空为False

#按先进先出顺序取数据
q.get()#成员1
q.get()#成员2
q.get()#成员3
print(q.empty())#True


#优先级队列
pq = PriorityQueue()
#任务不要直接put,需要封装到元组当中。
#格式:(数字,消息)

pq.put((1,'文件1'))
pq.put((3,'文件2'))
pq.put((-8,'文件3'))
pq.put((66,'文件4'))
#根据优先级取出数据
#说明:数字越小优先级越高。
#print(pq.get())#(-10, '文件3')
i = 0
while i<pq.qsize():#pq.qsize是队列长度,注意区分线程数量
										#计算方法len(threading.enumerate())
    print(pq.get())

#后进先出队列
lq = LifoQueue()
lq.put('事件1')
lq.put('事件2')
lq.put('事件3')
print(lq.get())#后进先出优先取出:事件3

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值