Использование другой функции в функции не работает с multiprocess.Pool - PullRequest
0 голосов
/ 18 января 2019

Я попытался использовать другую функцию внутри функции и использовать Pool для map ее для многоядерности. И это не удалось. Как использовать многоуровневую функцию в Pool? питон 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 голосов
/ 18 января 2019

этот код работает нормально на моем конце. единственное, что я изменил, - это точка входа для проверки программы ниже кода:

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])
...