目录
一.Python 线程队列 Queue 分类二.Python 线程优先队列 PriorityQueue 简介三.Python 线程优先队列 PriorityQueue 函数介绍四.Python 线程优先队列 PriorityQueue 使用五.猜你喜欢零基础 Python 学习路线推荐 : Python 学习目录 >> Python 基础入门
在 线程队列 Queue / 线程队列 LifoQueue 文章中分别介绍了先进先出队列 Queue 和先进后出队列 lifoQueue ,而今天给大家介绍的是最后一种:优先队列 PriorityQueue ,对队列中的数据按照优先级排序,那么具体怎么用呢?
一.Python 线程队列 Queue 分类1.线程队列 Queue — FIFO(先进先出队列),即哪个数据先存入,取数据的时候先取哪个数据,同生活中的排队买东西;2.线程队列 LifoQueue — liFO(先进后出队列),即哪个数据最后存入的,取数据的时候先取,同生活中手q的d夹,子d最后放入的先打出;3.线程队列 PriorityQueue — PriorityQueue(优先级队列),即存入数据时候加入一个优先级,取数据的时候优先级最高的取出;二.Python 线程优先队列 PriorityQueue 简介在数据存入的时候设置优先级,取数据的时候默认按照优先级最高的取出,注意:使用优先级存数据取数据,队列中的数据必须是同一类型,举个栗子:班级成绩排名/身高排名……
值得注意的是:在将数据存入到优先队列 PriorityQueue 时,设置的值越小,优先级越高;
三.Python 线程优先队列 PriorityQueue 函数介绍函数不做过多介绍了,已经在 线程队列 Queue 有了详细讲解,两者都属于 Queue ,函数都一样!
四.Python 线程优先队列 PriorityQueue 使用按优先级:不管是数字、字母、列表 list 、元组 tuple 等(字典 dict 、集合 set 没测),使用优先级存数据取数据,队列中的数据必须是同一类型,都是按照实际数据的 ascii 码表的顺序进行优先级匹配,汉字是按照 unicode 表。
# !usr/bin/env python# -*- Coding:utf-8 _*-"""@Author:猿说编程@Blog(个人博客地址): www.codersrc.com@file:Python 线程优先队列 PriorityQueue.py@Time:2021/05/05 07:37@Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!"""import queueimport threadingimport timeq = queue.PriorityQueue()q.put([1, 'ace'])q.put([40, 333])q.put([3, 'afd'])q.put([5, '4asdg'])# 1是级别最高的,while not q.empty(): # 不为空时候执行 print(q.get())q = queue.PriorityQueue()q.put('我')q.put('你')q.put('他')q.put('她')q.put('ta')while not q.empty(): print(q.get())'''输出结果:[1, 'ace'][3, 'afd'][5, '4asdg'][40, 333]ta他你她我'''
** 由此可见:在将数据存入到优先队列 PriorityQueue 时,设置的值越小,优先级越高!**
五.猜你喜欢Python 条件推导式Python 列表推导式Python 字典推导式Python 函数声明和调用Python 不定长参数 *argc/**kargcsPython 匿名函数 lambdaPython return 逻辑判断表达式Python 字符串/列表/元组/字典之间的相互转换Python 局部变量和全局变量Python type 函数和 isinstance 函数区别Python is 和 == 区别Python 可变数据类型和不可变数据类型Python 浅拷贝和深拷贝Python 文件读写 *** 作Python 异常处理Python 模块 importPython __name__ == ‘__main__’详细解释Python 线程创建和传参Python 线程互斥锁 LockPython 线程时间 EventPython 线程条件变量 ConditionPython 线程定时器 TimerPython 线程信号量 SemaphorePython 线程障碍对象 BarrierPython 线程队列 Queue – FIFOPython 线程队列 LifoQueue – LIFOPython 线程优先队列 PriorityQueue未经允许不得转载:猿说编程 » Python 线程优先队列 PriorityQueue
总结以上是内存溢出为你收集整理的Python 线程优先队列 PriorityQueue - Python零基础入门教程全部内容,希望文章能够帮你解决Python 线程优先队列 PriorityQueue - Python零基础入门教程所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)