【发布时间】:2019-08-01 03:29:09
【问题描述】:
我知道这个问题有很多例子,但我想知道如何使用多个参数运行多处理以及简单定义的函数的基本概念,如下面的代码示例。该函数从三个带有数字的独立列表中获取三个参数,并输出一个数字 1800。
list1 = [1,2,3,4,5]
list2 = [6,7,8,9,10]
list3 = [11,12,13,14,15]
def somefunc(x, y, z):
out = 0
for i in range(len(x)):
num = x[i] * y[i] * z[i]
out = out + num
return(out)
somefunc(list1,list2,list3)
我希望从multiprocessing 应用pool 和map 来并行执行它。我的想法是应用如下内容:
import multiprocessing as mp
p = mp.Pool(4)
output = p.map(somefunc, <PARAMETERS "x, y, z">, <ITERATION "i">))
p.close()
我相信有更好的方法,我很感激。但是,我写这篇文章的目的是我真的很想知道这是否可行。如果可行,怎么办?提前致谢。
【问题讨论】:
标签: python python-3.x function parallel-processing multiprocessing