【发布时间】:2017-04-18 16:24:19
【问题描述】:
今天我又有一个关于多处理的问题...... 我有一个小示例代码:
import multiprocessing
def function(a):
v = a**2
w = a**3
x = a**4
y = a**5
z = a**6
b = [1,2,3,4,5,6,7,8,9,10]
if __name__ == "__main__":
pool = multiprocessing.Pool(processes=4)
pool.imap(function, b)
结果应该是 5 个列表(vlist、wlist、xlist、ylist 和 zlist)。 vlist 应该有所有的 v 结果, wlist 应该有 w 结果等等。 我想订购所有结果,所以我想使用 imap,我希望它是正确的方式。 我以为我可以使用诸如附加命令之类的东西,但我不知道如何...
感谢您的帮助, 约翰
【问题讨论】:
-
您的函数实际上并没有做任何事情,因为
v, w, x, y, z实际上并不存在。为了使用imap(),你的函数需要返回一个值。
标签: python dictionary multiprocessing pool