Python mkdir -p 同等
Python 内からシェルの mkdir -p 機能をシミュレートするには、いくつかのアプローチが利用可能です。
Python 3.5 以降
Python 3.5 では、parents パラメーターとexist_ok パラメーターを含む pathlib.Path.mkdir 関数が導入されています。 parent を True に設定し、exist_ok を True に設定すると、エラーが発生することなく、ディレクトリと存在しない親ディレクトリが作成されます。
<code class="python">import pathlib pathlib.Path("/tmp/path/to/desired/directory").mkdir(parents=True, exist_ok=True)</code>
Python 3.2 以降
Python 3.2 以降の場合、os.makedirs 関数にはオプションの 3 番目の引数、exist_ok があり、これを True に設定すると同じ動作を実現できます:
<code class="python">import os os.makedirs("/tmp/path/to/desired/directory", exist_ok=True)</code>
以前の Python バージョン
古いバージョンの Python の場合、次のコードを使用して、os.makedirs 関数を使用し、ディレクトリが既に存在する場合に OSError 例外をキャッチできます。
<code class="python">import errno import os def mkdir_p(path): try: os.makedirs(path) except OSError as exc: # Python ≥ 2.5 if exc.errno == errno.EEXIST and os.path.isdir(path): pass # possibly handle other errno cases here, otherwise finally: else: raise</code>
以上がPython で「mkdir -p」機能をシミュレートするには?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。