【发布时间】:2016-12-09 09:47:43
【问题描述】:
我想做一个for循环并行:
def multiple(a, b):
return a * b
Parallel(n_jobs=2)(delayed(multiple)(a=i, b=j) for i in range(1, 6) for j in range(11, 16))
但它给了我一个错误信息:
Traceback (most recent call last):
File "<input>", line 1, in <module>
File "/Users/tiantian/Library/Python/2.7/lib/python/site-packages/joblib/parallel.py", line 758, in __call__
while self.dispatch_one_batch(iterator):
File "/Users/tiantian/Library/Python/2.7/lib/python/site-packages/joblib/parallel.py", line 603, in dispatch_one_batch
tasks = BatchedCalls(itertools.islice(iterator, batch_size))
File "/Users/tiantian/Library/Python/2.7/lib/python/site-packages/joblib/parallel.py", line 127, in __init__
self.items = list(iterator_slice)
File "<input>", line 1, in <genexpr>
File "/Users/tiantian/Library/Python/2.7/lib/python/site-packages/joblib/parallel.py", line 183, in delayed
pickle.dumps(function)
TypeError: expected string or Unicode object, NoneType found
代码有什么问题?
【问题讨论】:
标签: python for-loop parallel-processing