Python优先队列实现方法示例


Posted in Python onSeptember 21, 2017

本文实例讲述了Python优先队列实现方法。分享给大家供大家参考,具体如下:

1. 代码

import Queue
import threading
class Job(object):
  def __init__(self, priority, description):
    self.priority = priority
    self.description = description
    print 'New job:', description
    return
  def __cmp__(self, other):
    return cmp(self.priority, other.priority)
q = Queue.PriorityQueue()
q.put(Job(3,'Mid-level job'))
q.put(Job(10,'Low-level job'))
q.put(Job(1,'Important job'))
def process_job(q):
  while True:
    next_job = q.get()
    print 'Processing job:', next_job.description
    q.task_done()
workers = [threading.Thread(target=process_job,args=(q,)),
      threading.Thread(target=process_job,args=(q,)),]
for w in workers:
  w.setDaemon(True)
  w.start()
q.join()

2. 执行结果

New job: Mid-level job
New job: Low-level job
New job: Important job
Processing job: Important job
Processing job: Mid-level job
Processing job: Low-level job

更多关于Python相关内容可查看本站专题:《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
Python列表推导式的使用方法
Nov 21 Python
用Python登录好友QQ空间点赞的示例代码
Nov 04 Python
git进行版本控制心得详谈
Dec 10 Python
Django入门使用示例
Dec 12 Python
使用pandas对矢量化数据进行替换处理的方法
Apr 11 Python
Linux下python制作名片示例
Jul 20 Python
pytorch打印网络结构的实例
Aug 19 Python
python采集百度搜索结果带有特定URL的链接代码实例
Aug 30 Python
python实现低通滤波器代码
Feb 26 Python
Python super()函数使用及多重继承
May 06 Python
Python pathlib模块使用方法及实例解析
Oct 05 Python
一篇文章带你了解Python和Java的正则表达式对比
Sep 15 Python
python虚拟环境virtualenv的安装与使用
Sep 21 #Python
基于python socketserver框架全面解析
Sep 21 #Python
基于python select.select模块通信的实例讲解
Sep 21 #Python
Python实现小数转化为百分数的格式化输出方法示例
Sep 20 #Python
Python实现字符串格式化输出的方法详解
Sep 20 #Python
Python+Selenium+PIL+Tesseract自动识别验证码进行一键登录
Sep 20 #Python
python select.select模块通信全过程解析
Sep 20 #Python
You might like
基于php导出到Excel或CSV的详解(附utf8、gbk 编码转换)
2013/06/25 PHP
19个Android常用工具类汇总
2014/12/30 PHP
php使用include 和require引入文件的区别
2017/02/16 PHP
Jquery中val()表单取值赋值的实例代码
2013/08/15 Javascript
jquery实现图片随机排列的方法
2015/05/04 Javascript
AngularJS基础教程之简单介绍
2015/09/27 Javascript
基于html5和nodejs相结合实现websocket即使通讯
2015/11/19 NodeJs
javascript随机抽取0-100之间不重复的10个数
2016/02/25 Javascript
jQuery的文档处理程序详解
2016/05/10 Javascript
通过jquery-ui中的sortable来实现拖拽排序的简单实例
2016/05/24 Javascript
使用nodejs下载风景壁纸
2017/02/05 NodeJs
Angular2下使用pdf插件的方法详解
2017/04/29 Javascript
js实现移动端导航点击自动滑动效果
2017/07/18 Javascript
JS获取数组中出现次数最多及第二多元素的方法
2017/10/27 Javascript
完美解决axios在ie下的兼容性问题
2018/03/05 Javascript
如何为你的JavaScript代码日志着色详解
2019/04/08 Javascript
vue 中 elment-ui table合并上下两行相同数据单元格
2019/12/26 Javascript
JavaScript实现轮播图片完整代码
2020/03/07 Javascript
[46:10]2014 DOTA2国际邀请赛中国区预选赛 CnB VS HGT
2014/05/21 DOTA
跟老齐学Python之做一个小游戏
2014/09/28 Python
简单介绍Python中利用生成器实现的并发编程
2015/05/04 Python
用Python计算三角函数之atan()方法的使用
2015/05/15 Python
Python正则获取、过滤或者替换HTML标签的方法
2016/01/28 Python
你应该知道的python列表去重方法
2017/01/17 Python
在Pycharm中修改文件默认打开方式的方法
2019/01/17 Python
python+selenium+Chrome options参数的使用
2020/03/18 Python
韩国邮政旗下生鲜食品网上超市:epost
2016/08/27 全球购物
美国殿堂级滑板、冲浪、滑雪服装品牌:Volcom(钻石)
2017/04/20 全球购物
英国排名第一的在线宠物用品商店:Monster Pet Supplies
2018/05/20 全球购物
电子商务专业推荐信范文
2013/12/02 职场文书
后勤部长岗位职责
2013/12/14 职场文书
人民教师求职自荐信
2014/03/12 职场文书
大学生村官演讲稿
2014/04/25 职场文书
群众路线教育实践活动调研报告
2014/11/03 职场文书
优秀教师先进事迹材料
2014/12/15 职场文书
工厂仓管员岗位职责
2015/04/01 职场文书