必要に応じて、実行前に元のパラメーターにいくつかの追加パラメーターを追加するスクリプトをos.environ['PATH']実行できるように修正する必要がありました。dir\to\fake\python.cmd
また、2 つの Python スクリプトがあります。
test1.py:
# ...
p = subprocess.call("test2.py") # shell=True works fine
# ...
test2.py:
# ...
print "Hello from test2.py"
# ...
python test1.py「偽物」を実行するpython.cmdと、元のpythonが参照され、追加の引数c:\Python25で実行されます。test1.pyしかし、悲しいことにtest2.py、スクリプトは呼び出されません。私が引数shell=Trueとして置く場合subprocess.call- すべての罰金test2.pyは、呼び出されます。
c:\Python25Windowsは、デフォルトで実際の作業ディレクトリで呼び出しに使用するPythonインタープリターを見つけようとしてshell=Falseいます。
test1.pyあなたへの質問は、と のコードを変更せずに目標を達成するにはどうすればよいtest2.pyですか? virtualenvこの場合、ライブラリが非常に役立つのではないでしょうか。
ご助力ありがとうございます