03.队列

https://www.cnblogs.com/xiaonq/p/8574655.html#i3

1.1 队列定义

1、队列是一个数据集合,仅允许在列表的一端进行插入,另一端进行删除
2、插入的一端称为队尾(rear),插入动作叫进队或入队
3、进行删除的一端称为对头(front),删除动作称为出队
4、队列性质:先进先出(First-in, First-out)
5、双向队列:队列的两端都允许进行进队和出队操作

1.2 队列使用方法

from queue import Queue
#1. 基本FIFO队列  先进先出 FIFO即First in First Out,先进先出
#2. maxsize设置队列中,数据上限,小于或等于0则不限制,容器中大于这个数则阻塞,直到队列中的数据被消掉
q = Queue(maxsize=0)

#3. 写入队列数据
q.put(0)
q.put(1)
q.put(2)

#4. 输出当前队列所有数据
print(q.queue)

#5. 删除队列数据,并返回该数据
q.get()

#6. 输也所有队列数据
print(q.queue)

1.3 队列应用场景

1.队列主要的功能是在多个进程间共享数据,实现业务解耦,提高效率
2.生产者线程只需要把任务放入队列中,消费者线程只需要到队列中取数据进行处理
注:队列与列表区别
列表中数据虽然是排列的,但数据被取走后还会保留,而队列中这个容器的数据被取后将不会保留
原文地址:https://www.cnblogs.com/xiaoxiamiaichiyu/p/14586854.html