我已经阅读了许多有关将多个参数传递或将可迭代对象传递给Python的multiprocessing.Pool.map
的文章,但是这些似乎都没有讨论最一般的情况,即传递多个参数和多个可迭代对象。在代码中,它应类似于:
import multiprocessing as mp
with mp.Pool() as pool:
pool.map(func, args=(), iterables=()) # passing multiple args and iterables
我该如何实现?
答案 0 :(得分:0)
使用Pool.map()和相关函数时,辅助函数必须采用一个值:一项工作。如果一项工作必须包含多个值,请创建一个适当的数据结构来保存它们(例如,元组,列表,字典或用户定义类的实例)。
类似地,Pool.map()
处理单个可迭代对象。但是,可迭代项可以通过各种方式链接,压缩或组合。有关示例,请参见itertools软件包。