メインディレクトリのサブフォルダ内にいくつかの子スクリプトを実行するマスタースクリプトがあります。
フォルダ階層は次のようになります。
MyFolder\MasterScript.py
MyFolder\ChildOneScript\ChildOne.py
MyFolder\ChildTwoScript\ChildTwo.py
MyFolder\ChildThreeScript\ChildThree.py
MasterScriptから、ChildOneの関数 "myChildFunction"を呼び出して、いくつかの変数を渡す必要があります。問題は、私は単純にできないことです
import ChildOneScript.ChildOne as ChildOne
ChildOne.myChildFunction
ChildOneの相対パスに依存する他のスクリプトがあるためです。したがって、ChildOneをMasterScriptからMyFolderディレクトリにインポートし、そこでmyChildFunctionを呼び出すと、他のファイルが見つからないというトレースバックエラーが発生します。これは、多くの手作業であるため、相対パス呼び出しの変更を拒否する別の頑固なプログラマーのミスによるものです。
それで、MasterScript内からmyChildFunctionを呼び出して、それにいくつかの変数を渡す方法はありますか?
subprocess.callとcwd引数を使用して作業ディレクトリを変更できることは承知していますが、特定のmyChildFunctionを呼び出して、subprocessを使用して変数を渡すことができるかどうかはわかりません。
編集: execfileを使用して変数を渡すことは可能ですか?