我正在运行Windows 7。
在我的主模块中,我调用了一个函数A
,它位于模块a
中。
import a
a.A(listOfInputTuplesForB)
A
调用函数B
的多个实例:
import multiprocessing as mp
def A(listOfInputTuplesForB):
if __name__ == '__main__':
pool = mp.Pool(processes = mp.cpu_count())
pool.map(poolWrapperForB, listOfInputTuplesForB)
pool.close()
pool.join()
def poolWrapperForB(inputTuple):
return B(*inputTuple)
def B(arg1, arg2, arg3):
print "I did nothing with my arguments!"
现在,很明显,当我运行主模块时,没有任何反应,因为条件if __name__ == '__main__'
失败,因为__name__ == 'a'
。
这个程序if __name__ == '__main__'
应该放在哪里?
答案 0 :(得分:4)
从def A(listOfInputTuplesForB):
删除主文件并将其放在另一个文件中。
import a
if __name__ == "__main__":
a.A(listOfInputTuplesForB)