python多任务及返回值的处理方法


Posted in Python onJanuary 22, 2019

废话不多说,直接上代码!

# coding:utf-8
from multiprocessing import Pool
import time
 
 
def keywords(title, content, top_n=5):
 print u'关键词提取...'
 print title, content, top_n
 time.sleep(3)
 return 0, [u"晴", u"多云"]
 
 
def category(title, content):
 print u'文本分类...'
 print title, content
 time.sleep(5)
 return 1, [u"天气"]
 
 
def run(title, content):
 keywords_list = []
 category_list = []
 pool = Pool(processes=2)
 q = []
 q.append(pool.apply_async(keywords, args=(title, content, 5)))
 q.append(pool.apply_async(category, args=(title, content)))
 for item in q:
  r = item.get()
  if r[0] == 0:
   keywords_list = r[1]
  elif r[0] == 1:
   category_list = r[1]
 pool.close()
 pool.join()
 
 return category_list, keywords_list
 
if __name__ == "__main__":
 title = u"天气预报"
 content = u"北京今日天气:晴转多云"
 t1 = time.time()
 category_list, keywords_list = run(title, content)
 print "分类结果:", " ".join(category_list)
 print "关键词提取结果", " ".join(keywords_list)
 print time.time() - t1

或者:

# coding:utf-8
from multiprocessing import Pool
import time
 
 
def keywords(title, content, top_n=5):
 print u'关键词提取...'
 print title, content, top_n
 time.sleep(3)
 return 0, [u"晴", u"多云"]
 
 
def category(title, content):
 print u'文本分类...'
 print title, content
 time.sleep(5)
 return 1, [u"天气"]
 
 
def run(title, content):
 keywords_list = []
 category_list = []
 pool = Pool(processes=2)
 q = []
 q.append(pool.apply_async(keywords, args=(title, content, 5)))
 keywords_list = [w["word"] for w in q[0].get()[1]]
 category_list = category(title, content)[1]
 pool.close()
 pool.join()
 
 return category_list, keywords_list
 
if __name__ == "__main__":
 title = u"天气预报"
 content = u"北京今日天气:晴转多云"
 t1 = time.time()
 category_list, keywords_list = run(title, content)
 print "分类结果:", " ".join(category_list)
 print "关键词提取结果", " ".join(keywords_list)
 print time.time() - t1

以上这篇python多任务及返回值的处理方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python版的文曲星猜数字游戏代码
Sep 02 Python
python fabric实现远程操作和部署示例
Mar 25 Python
python中sets模块的用法实例
Sep 30 Python
python字符类型的一些方法小结
May 16 Python
Python变量赋值的秘密分享
Apr 03 Python
python按行读取文件,去掉每行的换行符\n的实例
Apr 19 Python
Python求解任意闭区间的所有素数
Jun 10 Python
python解析yaml文件过程详解
Aug 30 Python
Python爬虫实现“盗取”微信好友信息的方法分析
Sep 16 Python
Pytorch 实现冻结指定卷积层的参数
Jan 06 Python
浅谈Pycharm的项目文件名是红色的原因及解决方式
Jun 01 Python
Django rest framework如何自定义用户表
Jun 09 Python
opencv实现静态手势识别 opencv实现剪刀石头布游戏
Jan 22 #Python
python自动发送测试报告邮件功能的实现
Jan 22 #Python
python3去掉string中的标点符号方法
Jan 22 #Python
在Python中将函数作为另一个函数的参数传入并调用的方法
Jan 22 #Python
python3.4爬虫demo
Jan 22 #Python
使用Template格式化Python字符串的方法
Jan 22 #Python
python实现公司年会抽奖程序
Jan 22 #Python
You might like
php版微信公众平台回复中文出现乱码问题的解决方法
2016/09/22 PHP
php实现xml转换数组的方法示例
2017/02/03 PHP
laravel 解决ajax异步提交数据,并还回填充表格的问题
2019/10/15 PHP
基于js disabled="false"不起作用的解决办法
2013/06/26 Javascript
jquery bind(click)传参让列表中每行绑定一个事件
2014/08/06 Javascript
jQuery插件Tmpl的简单使用方法
2015/04/27 Javascript
JavaScript图片轮播代码分享
2015/07/31 Javascript
JavaScript中获取HTML元素值的三种方法
2016/06/20 Javascript
表单中单选框添加选项和移除选项
2016/07/04 Javascript
总结AngularJS开发者最常犯的十个错误
2016/08/31 Javascript
纯JavaScript手写图片轮播代码
2016/10/20 Javascript
手机移动端实现 jquery和HTML5 Canvas的幸运大奖盘特效
2016/12/06 Javascript
微信小程序组件 contact-button(客服会话按钮)详解及实例代码
2017/01/10 Javascript
jQuery中layer分页器的使用
2017/03/13 Javascript
基于vue实现网站前台的权限管理(前后端分离实践)
2018/01/13 Javascript
纯js+css实现仿移动端淘宝网站的弹出详情框功能
2019/12/29 Javascript
vue项目中使用bpmn-自定义platter的示例代码
2020/05/11 Javascript
基于Element封装一个表格组件tableList的使用方法
2020/06/29 Javascript
[03:34]2014DOTA2西雅图国际邀请赛 淘汰赛7月15日TOPPLAY
2014/07/15 DOTA
[00:32]2018DOTA2亚洲邀请赛出场——VP
2018/04/04 DOTA
paramiko模块安装和使用(远程登录服务器)
2014/01/27 Python
python3访问sina首页中文的处理方法
2014/02/24 Python
Python编程中运用闭包时所需要注意的一些地方
2015/05/02 Python
详解用python实现基本的学生管理系统(文件存储版)(python3)
2019/04/25 Python
探讨HTML5移动开发的几大特性(必看)
2015/12/30 HTML / CSS
全球速卖通法国在线交易平台:AliExpress法国
2017/07/07 全球购物
GE设备配件:GE Appliance Parts(家电零件、配件和滤水器)
2018/11/28 全球购物
英国领先的独立酒精饮料零售商:DrinkSupermarket
2021/01/13 全球购物
DELPHI中如何调用API,可举例说明
2014/01/16 面试题
大学生素质拓展活动方案
2014/02/11 职场文书
大学生社会实践活动总结
2014/07/03 职场文书
闪闪红星观后感
2015/06/08 职场文书
员工规章制度范本
2015/08/07 职场文书
Redis如何一键部署脚本
2021/04/12 Redis
python-opencv 中值滤波{cv2.medianBlur(src, ksize)}的用法
2021/06/05 Python
六个好看实用的 HTML + CSS 后台登录入口页面
2022/04/28 HTML / CSS