---
title: 队列
date: 2024-06-06T23:51:42Z
tags: []
---

> 队列是一种先进先出的数据结构

## 语法

​`队列对象=Queue(N)`​

## 常用方法

| 功能                                                      | 方法                     |
| --------------------------------------------------------- | ------------------------ |
| 获取当前队列包含的消息数量                                | ​`qsize()`​              |
| 判断队列是否为空,为空结果为 True,否则为 False             | ​`empty()`​              |
| 判断队列是否满了,满结果为 True,否则为 False               | ​`full()`​               |
| 获取队列中的一条消息,然后从队列中移除,block 默认值为 True | ​`get(block=True)`​      |
| 相当于`get(block=False)`​,消息队列为空时抛出异常          | ​`get_nowait()`​         |
| 将 item 消息放入队列,block 默认为 True                    | ​`put(item,block=True)`​ |
| 相当于`put(item,block=False)`​                            | ​`put_nowait(itam)`​     |
| 如果队列不为空,则等待队列变空                             | ​`join()`​               |
| 从队列中取出一项数据,当队列变空时,调用唤醒`join()`​       | ​`task_done()`​          |

‍
