ホームページ >バックエンド開発 >Python チュートリアル >Python でディレクトリとその親ディレクトリを作成するにはどうすればよいですか?

Python でディレクトリとその親ディレクトリを作成するにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-12-15 12:29:19460ブラウズ

How Can I Create Directories and Their Parent Directories in Python?

Python を使用したディレクトリとその親の作成

ファイル システムの領域では、両方とも指定されたパスにディレクトリを作成することが必要になることがよくあります。途中で親ディレクトリが欠落している場合も同様です。これは、Bash の mkdir -p コマンドの機能を模倣しています。

最新の Python (≥ 3.5):

Python の pathlib モジュールは、これを処理する便利な方法を提供します。

from pathlib import Path
Path("/my/directory").mkdir(parents=True, exist_ok=True)

古い Pythonバージョン:

OS モジュールの使用:

import os
if not os.path.exists(directory):
    os.makedirs(directory)

コメントで指摘されているように、このアプローチには競合状態が発生する可能性があります。これに対処するには、2 番目の os.path.exists 呼び出しを使用するか、OSError をトラップして、埋め込みエラー コードを調べることができます:

import os, errno

try:
    os.makedirs(directory)
except OSError as e:
    if e.errno != errno.EEXIST:
        raise

ただし、これにより、他のエラーが見逃されるリスクが生じます。

改善された Python バージョン:

Python 3.3 では、FileExistsError が導入され、簡素化されています。エラー処理:

try:
    os.makedirs("path/to/directory")
except FileExistsError:
    # directory already exists
    pass

Python 3.2 では、exist_ok 引数も os.makedirs:

os.makedirs("path/to/directory", exist_ok=True)  # succeeds even if directory exists.
に追加されます。

以上がPython でディレクトリとその親ディレクトリを作成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。