gpt4 book ai didi

python - 使用 pool.map 在 Python 中运行多个函数

转载 作者:行者123 更新时间:2023-12-04 00:16:02 26 4
gpt4 key购买 nike

我需要并行运行多个函数。我试过了

from multiprocessing import Pool

def smap(f, *args):
return f(*args)

def somma(*args):
a=args[0]
b=args[1]
return a+b

def prodotto(*args):
a=args[0]
b=args[1]
return a*b

pool = Pool(processes=2)
a=2
b=4
res=pool.map(smap, [(somma,a,b),(prodotto,a,b)])
print(res)

错误如下:

TypeError: 'tuple' object is not callable

怎么了?

最佳答案

您将整个元组作为第一个参数 f 传递给函数 smap,这不是您想要的函数。您可以将 smap 更改为:

def smap(f_args):
f, *args = f_args
return f(*args)

这将正确地只接受来自 Pool.map 的一个参数,并在调用中拆分 fargs

关于python - 使用 pool.map 在 Python 中运行多个函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63738083/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com