python Queue组件使用 | Python工具类

简介: python Queue组件使用 | Python工具类

简述

队列一直都是工程化开发中经常使用的数据类型,本篇文章主要介绍一下python queue的使用,会边调试代码,边说明方法内容。

环境

python: 3.6.13

单向队列

初始化单向队列


image.png



放置一些数据


image.png


可以使用full()方法判断队列是否已经塞满数据,可以通过qsize()方法查看队列内元素数量。


image.png


这时候我们从队列取出数据,看先取到的是什么。


image.png



现在队列里面只有两个数,我们再塞入3个数看一下。


image.png



这个时候我们继续塞入第六个数会怎么样呢?


image.png



可以看到如果塞入超过队列限定数量的元素,会阻塞住队列。所以在一般的项目工程中,我们会分成两个线程,一个消费数据,一个塞入队列数据。按照业务需求看是否需要限定队列长度。


先进后出队列

上面展示的是先进先出(FIFO)的单项队列,python的queue模块也提供先进后出(LIFO)的队列: LifoQueue,类似java的栈类型。


image.png


塞入数据后看取出的是在队列的什么位置。



image.png



可以看出从队列取出的是队尾数据。


优先级队列

按照自定的优先级来对队列数据自动排序:PriorityQueue。



image.png


塞入数据后,全部取出,打印看一下顺序是什么样的。


image.png




可以看出,书序是按照我们塞入数据的级别由小到大排序的。


相关文章
|
6月前
|
Python
117 python高级 - 进程间通信Queue
117 python高级 - 进程间通信Queue
24 0
|
4月前
|
Python
python图形页面:组件布局grid方法
python图形页面:组件布局grid方法
22 0
|
5月前
|
Windows Python
python操作windows组件
python操作windows组件
23 0
|
5月前
|
开发者 Python
【python】tkinter组件,from Tkinter import * 与 import Tkinter 的区别
【python】tkinter组件,from Tkinter import * 与 import Tkinter 的区别
53 0
|
9月前
python-- 多进程队列 Queue、生成者和消费者
python-- 多进程队列 Queue、生成者和消费者
|
11月前
|
自然语言处理 Python 容器
Python|GUI编程中组件的布局
Python|GUI编程中组件的布局
268 0
|
11月前
|
小程序 程序员 Python
Python|GUI编程Button组件介绍
Python|GUI编程Button组件介绍
252 1
|
12月前
|
开发框架 API C++
ESP32 + HaaS Python UI Lite 组件 打造倒计时面板
ESP32 + HaaS Python UI Lite 组件 打造倒计时面板
130 0
|
Python
Python中如何清空Queue?
Python中如何清空Queue?
781 0
|
算法 安全 Python
Python数据结构与算法(9)---优先级队列queue
Python数据结构与算法(9)---优先级队列queue
96 0
Python数据结构与算法(9)---优先级队列queue