gpt4 book ai didi

python - 如何使用 joblib Python 返回矩阵?

转载 作者:太空宇宙 更新时间:2023-11-04 03:17:53 25 4
gpt4 key购买 nike

我有一个返回列表的函数。我正在使用 joblib 进行并行处理。

from joblib import Parallel, delayed
def myFunc(c, K, N):
# something
return myList
inputs = range(500)
if __name__ == '__main__':
val = Parallel(n_jobs=20)(delayed(myFunc)(c, K, N) for c in inputs)

我想在从 1 到 500 的每次迭代中存储所有重新计算的列表 val,然后使用它们。

如果没有并行,我会这样做:

def myFunc(c, K, N):
# something
return myList
inputs = range(500)
lists = []
for c in inputs:
val = myFunc(c, K, N)
lists.append(val)
# Now I have all the lists

我可以并行执行此操作吗?

最佳答案

事实上,joblib.Parallel 会为您完成这项工作。

from __future__ import print_function
from joblib import Parallel, delayed
import random


def my_func(c, K, N):
my_list = [random.randrange(3) for _ in range(K*N)]
return my_list


if __name__ == '__main__':
inputs = range(2)
K, N = 3, 3
val = Parallel(n_jobs=2)(delayed(my_func)(c, K, N) for c in inputs)
print(val)

这将打印

[[0, 1, 1, 0, 1, 2, 2, 1, 1], [2, 1, 2, 0, 1, 1, 2, 1, 0]]

关于python - 如何使用 joblib Python 返回矩阵?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35663498/

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