1. ホーム
  2. python

[解決済み] 作業ディレクトリを変更するシェル 'cd' コマンドに相当するものですか?

2022-03-18 22:24:34

質問

cd は、作業ディレクトリを変更するためのシェルコマンドです。

Pythonでカレントワーキングディレクトリを変更するには?

どのように解決するのですか?

で作業ディレクトリを変更することができます。

import os

os.chdir(path)

この方法を使用する場合、2つのベストプラクティスがあります。

  1. 無効なパスの例外(WindowsError、OSError)をキャッチする。 例外が発生した場合、再帰的な操作、特に破壊的な操作は行わないでください。 これらの操作は、古いパスに対して行われ、新しいパスに対しては行われません。
  2. 作業が終わったら古いディレクトリに戻る。 これは、Brian M. Hunt が以下の記事で行ったように、chdir 呼び出しをコンテキストマネージャーでラップすることで例外を回避できます。 彼の答え .

サブプロセスで現在の作業ディレクトリを変更しても、親プロセスの現在の作業ディレクトリは変更されません。 これはPythonインタプリタでも同様です。 を使うことはできません。 os.chdir() を使用して、呼び出しプロセスのCWDを変更することができます。