首页 > 解决方案 > 在python中并行处理25个对象的列表

问题描述

我有一个接受一个输入的函数。我想在 25 个不同的输入上运行相同的函数,最后结合 25 个函数调用的结果。我如何在python中做到这一点?多线程或多处理会是更好的方法吗?我在我的工作笔记本电脑上做这件事,并使用以下方法:

import multiprocessing
pool = multiprocessing.Pool(processes=5)
output = pool.map(get_results, response_obj)

它甚至比串行处理对象花费的时间更长。这些函数正在对 API 执行 GET 请求。

标签: pythonmultithreadingmultiprocessing

解决方案


通常说,使用异步方法get-requests的最佳实践。Python中有很多关于异步编程的库和其他资源。

要弄湿你的脚,你应该看看asyncio

https://docs.python.org/3/library/asyncio.html


推荐阅读