赞
踩
假设有一个多变量函数func(a1, a2, ..., an)
def func(a1, a2, ..., an):
return a1 + a2 + ... + an
用列表包装一下这个函数的变量: list_arg = [a1, a2, ..., an]
def func_list_arg(list_arg):
a1 = list_arg[0]
a2 = list_arg[1]
.....
an = list_arg[n-1]
return func(a1, a2, ..., an)
然后就可以用pool的map方法来进行多进程并发。
pool = multiprocessing.Pool()
假设a1有一系列数list_a1,那么这就可以进行多进程同时执行函数,提高效率。
list_of_list_arg = [] # 一系列的多变量
for a1 in list_a1:
list_arg = [a1, a2, ..., an] # 一组多变量
list_of_list_arg.append(list_arg) # 一系列的多变量
list_result = pool.map(func_list_arg, list_of_list_arg) # 多进程并发
list_result就是对应于list_of_list_arg的一系列的结果,是一个列表
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。