15

複数の引数を取る関数があり、そのうちのいくつかはブール値です。これをマルチプロセッシングに渡そうとしpool.apply_asyncていますが、名前が付けられたいくつかの引数を渡したいと思っています。

私が使用しているスクリプトの例を次に示します。

from multiprocessing import Pool

    def testFunc(y, x, calcY=True):
        if calcY == True:
            return y*y
        elif calcY == False:
            return x*x

    if __name__ == "__main__":
        p = Pool()
        res = p.apply_async(testFunc, args = (2, 4, False))
        print res.get()

res = p.apply_async(testFunc, args = (2, 4, False))これは機能しますが、を次のように変更することに興味があります。

res = p.apply_async(testFunc, args = (2, 4, calcY = False))
4

1 に答える 1

24

apply_asyncにはargskwds次のように使用できるキーワード引数があります。

res = p.apply_async(testFunc, args=(2, 4), kwds={'calcY': False})
于 2012-09-18T18:26:28.610 に答える