Python3中的queue队列,用来在生产者和消费者线程之间传递信息使用。
1、基本的FIFO队列原则,即先进先出(First in First Out),代码示例如下:
[Python] 纯文本查看 复制代码 import queue
# FIFO队列
q = queue.Queue()
for i in range(5):
q.put(i)
while not q.empty():
print(q.get())
# 输出如下
# 0
# 1
# 2
# 3
# 4
需要注意:在Python2中应该导入使用Queue,即:
[Python] 纯文本查看 复制代码 import Queue
2、LIFO队列,即后进先出(Last in First Out),与栈结构类似,代码示例如下:
[Python] 纯文本查看 复制代码 # LIFO队列
q = queue.LifoQueue()
for i in range(5):
q.put(i)
while not q.empty():
print(q.get())
# 输出如下:
# 4
# 3
# 2
# 1
# 0
3、下面看一下一些常用的方法
1)、empty方法
看一下官方的注释信息:如果这个队列为空,则返回True,否则返回False(不可靠!),这个方法可能会被删除,请使用 qsize() == 0作为替代...
2)、put方法
将一个项目添加到队列
3)、get方法
从队列中删除并且返回一个项目
4)、qsize方法
返回队列中剩余项目的个数
|