次を実行すると:
import subprocess
subprocess.check_call('dir', shell=True)
C:\
Pythonインタープリターを開始したディレクトリに関係なく、結果には常にの内容が表示されます。これも試しました:
import subprocess
subprocess.check_call('dir', shell=True, cwd='C:\\foo\\bar\\baz')
それもうまくいきません。同じ理由で、Scons (Python ベースのビルド ツール) を使用してアプリケーションをビルドする際にも問題が発生しています。
scons: Building targets ...
cl /Fobuild\Animation.obj /c src\Animation.cpp /TP /DSFML_STATIC /EHsc /MD /Zi /Ideps/Box2D_v2.2.1 / Ideps/LuaJIT-2.0.2/src /Ideps/SFML-2.0/include /Ideps/include /nologo
Animation.cpp
c1xx : fatal error C1083: Cannot open source file: 'src\Animation.cpp': No such file or directory
scons: * [build\Animation.obj] Error 2
scons: building terminated because of errors.
src\Animation.cpp が実際に存在することに注意してください。これは、Python インタープリターが実行されている実際の場所ではなく、 b/ccl.exe
が実行されているときに起こると思います。C:\
これは私の環境変数に問題があるのではないかと思いましたが、それらを確認したところ、すべて問題ないようです。Pythonも削除/再インストールしましたが、役に立ちませんでした。
何が起きてる?