1、python之Queue介绍
Python中的queue模块中提供了同步的、线程安全的队列类,包括FIFO(先进先出)队列Queue,LIFO(后入先出)队列LifoQueue。这些队列都实现了锁原语(可以理解为原子操作,即要么不做,要么都做完),能够在多线程中直接使用。
2、python之Queue方法
- 初始化Queue(maxsize):创建一个先进先出的队列;
- 初始化LifoQueue(maxsize):创建一个先进后出的队列;
- qsize():返回队列的大小;
- empty():判断队列是否为空;
- full():判断队列是否满了;
- get():从队列中取最后一个数据;
- put():将一个数据放到队列中。
3、python之Queue实操
3.1 创建一个先进先出的队列
import queue
import random
q = queue.Queue(maxsize=5) # 创建先进先出队列,并指定只能存5个数据
while True:
if q.full(): # 判断队列是否满了
print("队列满了呀,放不进来数据咯")
break
else:
Jier = random.random() # 生成一个随机数
print("往队列q中存入了数据:{}".format(Jier))
q.put(Jier) # 存放数据
print("队列q的数据存储了{}个".format(q.qsize()))
while True:
if q.empty(): # 判断队列是否空了
print("队列q空了呀")
break
else:
print("从队列q中取出了数据:{}".format(q.get())) # 取出数据
运行结果如下:
往队列q中存入了数据:0.16770815255552796
往队列q中存入了数据:0.6629318061550314
往队列q中存入了数据:0.1541872174654343
往队列q中存入了数据:0.6109450539369857
往队列q中存入了数据:0.23136112820862198
队列满了呀,放不进来数据咯
队列q的数据存储了5个
从队列q中取出了数据:0.16770815255552796
从队列q中取出了数据:0.6629318061550314
从队列q中取出了数据:0.1541872174654343
从队列q中取出了数据:0.6109450539369857
从队列q中取出了数据:0.23136112820862198
队列q空了呀
从上面可以看到,数据确实是先存进队列的,先被取出来消耗掉了。
3.2 创建一个先进后出的队列
剩余内容请转至VX公众号 “运维家” ,回复 “186” 查看。------ “运维家” ,回复 “186” ------
------ “运维家” ,回复 “186” ------
------ “运维家” ,回复 “186” ------
运维工程师是干什么的,收单猫运维工程师,武威光伏运维工程师,西安运维交付工程师招聘,石家庄网络运维工程师招聘;
数据中心运维基础工程师,运维工程师刚进公司什么都不会,顺丰的it运维工程师,佛山IDC机房运维工程师招聘,武汉仕云运维工程师加班多吗;
运维工程师T1,设施运维工程师转型,erp运维工程师培训课题,江西环保运维工程师招聘,通富微电子桌面运维工程师;
成都科技园运维工程师招聘,运维工程师的英语怎么说,运维工程师ppt,粤电风 电运维工程师咋样,运维工程师的薪酬。
网友评论