Python 使用Joblib并获取;无法解压缩不可编辑的函数对象“;
我是多处理机新手。以下代码正确地说明了我正在尝试执行的操作:Python 使用Joblib并获取;无法解压缩不可编辑的函数对象“;,python,multiprocessing,joblib,Python,Multiprocessing,Joblib,我是多处理机新手。以下代码正确地说明了我正在尝试执行的操作: import pandas as pd import multiprocessing from joblib import Parallel, delayed one = [True, False] one_bla = pd.Series(one) one_names = pd.Series(['Mr. Pea', 'Mrs. Pea']) one_names = list(zip(one_names, one_names.ind
import pandas as pd
import multiprocessing
from joblib import Parallel, delayed
one = [True, False]
one_bla = pd.Series(one)
one_names = pd.Series(['Mr. Pea', 'Mrs. Pea'])
one_names = list(zip(one_names, one_names.index))
two = {}
def q():
for k, m in one_bla.items():
if one_bla.iloc[i] == True:
two[i] = v
num_cores = multiprocessing.cpu_count()
results = Parallel(n_jobs=num_cores)(delayed(q) for i, v in one_names)
它向我抛出了一个
类型错误:无法解压缩不可编辑的函数对象
。有人能看看我哪里出了错吗?问题是延迟(q)命令后缺少妄想症。试试这个
results = Parallel(n_jobs=num_cores)(delayed(q)() for i, v in one_names)
错误在哪一行?是的,正确的方法应该是将函数传递到第一对括号中,并将参数传递到第二对括号中的该函数