A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 人工智能 黑马粉丝团   /  2019-4-3 11:01  /  2056 人查看  /  0 人回复  /   1 人收藏 转载请遵从CC协议 禁止商业使用本文

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方法
    返回队列中剩余项目的个数



0 个回复

您需要登录后才可以回帖 登录 | 加入黑马