Python多线程获取返回值代码实例


Posted in Python onFebruary 17, 2020

这篇文章主要介绍了Python多线程获取返回值代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

在使用多线程的时候难免想要获取其操作完的返回值进行其他操作,下面的方法以作参考:

一,首先重写threading类,使其满足调用特定的方法获取其返回值

import threading
class MyThread(threading.Thread):
  """重写多线程,使其能够返回值"""
  def __init__(self, target=None, args=()):
    super(MyThread, self).__init__()
    self.func = target
    self.args = args

  def run(self):
    self.result = self.func(*self.args)

  def get_result(self):
    try:
      return self.result # 如果子线程不使用join方法,此处可能会报没有self.result的错误
    except Exception:
      return None

二,调用get_result()方法,最终列表retval就是多线程返回值的集合:

def parse_detail_page(self,items_list):
  retval, RetList, _Threads = [], [], []
  for url in items_list:
    t = MyThread(target=self.threadItem, args=(url,))
    t.start()
    _Threads.append(t)
  for t in _Threads:
    t.join()
    retval.append(t.get_result())
def threadItem(self,url):
  """多线程请求""" 
 response = requests.get(url)
  return response.text

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
pyqt和pyside开发图形化界面
Jan 22 Python
Python实现简单的四则运算计算器
Nov 02 Python
利用Python2下载单张图片与爬取网页图片实例代码
Dec 25 Python
Python 实现取矩阵的部分列,保存为一个新的矩阵方法
Nov 14 Python
详解pyppeteer(python版puppeteer)基本使用
Jun 12 Python
python中while和for的区别总结
Jun 28 Python
复化梯形求积分实例——用Python进行数值计算
Nov 20 Python
Python无头爬虫下载文件的实现
Apr 02 Python
全网首秀之Pycharm十大实用技巧(推荐)
Apr 27 Python
python 实现全球IP归属地查询工具
Dec 18 Python
python 检测nginx服务邮件报警的脚本
Dec 31 Python
Python实现Appium端口检测与释放的实现
Dec 31 Python
Python实现ATM系统
Feb 17 #Python
python设置环境变量的作用整理
Feb 17 #Python
python数据爬下来保存的位置
Feb 17 #Python
使用TFRecord存取多个数据案例
Feb 17 #Python
从多个tfrecord文件中无限读取文件的例子
Feb 17 #Python
Python3连接Mysql8.0遇到的问题及处理步骤
Feb 17 #Python
python3连接MySQL8.0的两种方式
Feb 17 #Python
You might like
用PHP连接Oracle for NT 远程数据库
2006/10/09 PHP
php-fpm配置详解
2014/02/12 PHP
php自定义urlencode,urldecode函数实例
2015/03/24 PHP
基于PHP常用文件函数和目录函数整理
2017/08/17 PHP
JavaScript 继承详解(一)
2009/07/13 Javascript
$.ajax返回的JSON无法执行success的解决方法
2011/09/09 Javascript
js获取当前页面路径示例讲解
2014/01/08 Javascript
原生javascript实现图片滚动、延时加载功能
2015/01/12 Javascript
javascript实现日期按月份加减
2015/05/15 Javascript
javascript实现数组内值索引随机化及创建随机数组的方法
2015/08/10 Javascript
JQuery操作textarea,input,select,checkbox方法
2015/09/02 Javascript
使用jquery/js获取iframe父子级、同级获取元素的方法
2016/08/05 Javascript
Bootstrap下拉菜单Dropdowns的实现代码
2017/03/17 Javascript
Angular中的$watch、$watchGroup、$watchCollection
2017/06/25 Javascript
jQuery zTree插件使用简单教程
2019/08/16 jQuery
vue父子模板传值问题解决方法案例分析
2020/02/26 Javascript
Sanic框架路由用法实例分析
2018/07/16 Python
Python实现的旋转数组功能算法示例
2019/02/23 Python
利用selenium爬虫抓取数据的基础教程
2019/06/10 Python
python程序中的线程操作 concurrent模块使用详解
2019/09/23 Python
简单了解Python变量作用域正确使用方法
2020/06/12 Python
Pycharm Available Package无法显示/安装包的问题Error Loading Package List解决
2020/09/18 Python
python线程池 ThreadPoolExecutor 的用法示例
2020/10/10 Python
CSS3截取字符串实例代码【推荐】
2018/06/07 HTML / CSS
animation和transition的区别
2020/10/12 HTML / CSS
PurCotton全棉时代官网:100%天然棉花生产的生活护理用品
2016/11/18 全球购物
英国美术用品购物网站:Cass Art
2019/10/08 全球购物
卡拉威高尔夫官方网站:Callaway Golf
2020/09/16 全球购物
大学学风建设方案
2014/05/04 职场文书
岗位标兵事迹材料
2014/05/17 职场文书
品牌推广活动策划方案
2014/08/19 职场文书
基层党员对照检查材料
2014/09/24 职场文书
大学生村官驻村工作心得体会
2016/01/23 职场文书
一波干货,会议主持词开场白范文
2019/05/06 职场文书
读《庄子》有感:美而不自知
2019/11/06 职场文书
MySQL修改默认引擎和字符集详情
2021/09/25 MySQL