此模块一般用于和多线程配合
先进先出 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(): 实际上意味着等到队列为空,再执行别的操作
#-*-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