一、队列的定义
队列,又称为伫列(queue),计算机科学中的一种抽象资料型别,是先进先出(FIFO, First-In-First-Out)的线性表。在具体应用中通常用链表或者数组来实现。队列只允许在后端(称为rear)进行插入操作,在前端(称为front)进行删除操作。
二、Python队列的种类
queue 模块实现了多生产者、多消费者队列。这特别适用于消息必须安全地在多线程间交换的线程编程。模块中的 Queue 类实现了所有所需的锁定语义。
Queue
:普通的先进先出(FIFO)队列。LifoQueue
:后进先出(LIFO)队列,类似于栈。PriorityQueue
:优先队列。deque
:双端队列。
Queue 先进先出队列
队列对象 (Queue, LifoQueue, 或者 PriorityQueue) 提供下列描述的公共方法。
- Queue.qsize() 返回队列的大致大小。
- Queue.empty() 判断队列是否为空。
- Queue.full() 判断队列是否为满。
- Queue.put(item, block=True, timeout=None) 将 item 放入队列。
- Queue.get(block=True, timeout=None) 从队列中移除并返回一个项目。