gpt4 book ai didi

python - 多处理具有多个输入的函数

转载 作者:IT老高 更新时间:2023-10-28 21:15:21 26 4
gpt4 key购买 nike

在 Python 中,multiprocessing 模块可用于在一系列值上并行运行函数。例如,这会生成 f 的前 100000 次评估的列表。

def f(i):
return i * i

def main():
import multiprocessing
pool = multiprocessing.Pool(2)
ans = pool.map(f, range(100000))

return ans

当 f 接受多个输入但只有一个变量变化时,是否可以做类似的事情?例如,您将如何并行化:

def f(i, n):
return i * i + 2*n

def main():
ans = []
for i in range(100000):
ans.append(f(i, 20))

return ans

最佳答案

您可以使用 functools.partial()

def f(i, n):
return i * i + 2*n

def main():
import multiprocessing
pool = multiprocessing.Pool(2)
ans = pool.map(functools.partial(f, n=20), range(100000))

return ans

关于python - 多处理具有多个输入的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4463275/

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