在一个函数中使用另一个函数不适用于multiprocess.Pool

时间:2019-01-18 08:10:09

标签: python python-multiprocessing multiprocess

我试图在一个函数中使用另一个函数,并使用Poolmap使其成为多核。它失败了。如何在Pool中使用多级功能? python 3.6.4

from multiprocess import Pool


def fun(x):
    return fun1(x)

def fun1(x):
    return x**2

pool = Pool(4)

pool.map(fun,[1,2,3,4])

输出:

  

NameError:未定义名称“ fun1”

1 个答案:

答案 0 :(得分:0)

此代码在我的末端运行良好。我唯一更改的是代码下面的程序检查的入口点:

from multiprocess import Pool
def fun(x):
    print fun1(x)

def fun1(x):
    return x**2

if __name__ == '__main__':
    pool = Pool(4)
    pool.map(fun,[1,2,3,4])