作業ディレクトリを変更するシェルコマンドのように、cd
。
Pythonで現在の作業ディレクトリを変更するには?
で作業ディレクトリを変更することができます。
import os
os.chdir(path)
この方法を使う際には、2つのベストプラクティスがあります。
1.無効なパスに関する例外(WindowsError、OSError)をキャッチする。 例外が発生した場合は、再帰的な操作、特に破壊的な操作を行わないでください。 これらの操作は、新しいパスではなく、古いパスに対して行われます。 2.2. 終わったら元のディレクトリに戻ってください。 これは、Brian M. Huntがhis answerで行ったように、chdir呼び出しをコンテキストマネージャでラップすることで、例外セーフな方法で行うことができます。
サブプロセスの現在の作業ディレクトリを変更しても、親プロセスの現在の作業ディレクトリは変更されません。 これは Python インタープリタにも当てはまります。 呼び出したプロセスの CWD を変更するために os.chdir()
を使用することはできません。