并行:在Python中运行for循环

时间:2015-02-03 23:55:13

标签: python parallel-processing

我想让我的男女同校在并行中运行,如下所示

for j in range(nj):
    for i in range(ni):
        # assign matrix coefficient

这是一个非常大的矩阵,导致执行时间非常短,我如何在并行运行这种代码?

提前致谢!

1 个答案:

答案 0 :(得分:1)

您可能正在寻找multiprocessing模块。

import multiprocessing
import random
import time

def f(x,y):
    print multiprocessing.current_process()
    time.sleep(random.random())
    return x*y

p = multiprocessing.Pool(10)
res= []
for i in xrange(1,10):
  for j in xrange(1,10):
    res.append(p.apply_async(f, [i,j]))

for r in res:
  print r.get()