cd
作業ディレクトリを変更するシェルコマンドです。
Python で現在の作業ディレクトリを変更するにはどうすればよいですか?
ベストアンサー1
作業ディレクトリを変更するには、次のようにします。
import os
os.chdir(path)
ディレクトリを変更すると、新しい場所にコードが破壊的な変更を適用する可能性があるので注意してください。さらに悪いことに、ディレクトリを変更した後にWindowsError
やなどの例外をキャッチしないでくださいOSError
。そうしないと、古い場所に破壊的な変更が適用される可能性があります。
Python 3.11 以降を使用している場合は、完了時に元の作業ディレクトリに戻ることができるように、このコンテキスト マネージャーの使用を検討してください。
from contextlib import chdir
with chdir(path):
# do stuff here
古いバージョンの Python を使用している場合は、Brian M. Hunt の回答に独自のコンテキスト マネージャーを作成する方法が示されています。彼の答え。
サブプロセスで現在の作業ディレクトリを変更しても、親プロセスの現在の作業ディレクトリは変更されません。これは Python インタープリタでも同様です。を使用して、os.chdir()
呼び出しプロセスの CWD を変更することはできません。