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

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

Linda Hamilton
リリース: 2024-12-21 10:17:09
オリジナル
963 人が閲覧しました

How to Create a Directory and its Missing Parent Directories in Python?

Python を使用したディレクトリの作成と見つからない親ディレクトリ

Q: 指定したパスにディレクトリを作成しながら、ディレクトリを作成するにはどうすればよいですか?そのパスに沿って不足している親ディレクトリを作成しますか?

この機能を実現するにはPython ≥ 3.5 では、pathlib.Path.mkdir を使用します:

from pathlib import Path
Path("/my/directory").mkdir(parents=True, exist_ok=True)
ログイン後にコピー

以前の Python バージョンの場合は、次のアプローチを検討してください:

アプローチ 1: os.path を使用します。存在し、os.makedirs

import os
if not os.path.exists(directory):
    os.makedirs(directory)
ログイン後にコピー

このアプローチではこれは単純ですが、潜在的な競合状態を引き起こします。

アプローチ 2: 潜在的な競合状態を処理する

import os, errno

try:
    os.makedirs(directory)
except OSError as e:
    if e.errno != errno.EEXIST:
        raise
ログイン後にコピー

このオプションは、エラーを捕らえて調べることによって競合状態に対処します。コード。

モダン Python改善点:

Python バージョン 3.3 および 3.2 では改善点が導入されています:

  • FileExistsError が公開され、よりクリーンなエラー処理が可能になりました。
  • os.makedirs の機能は、exist_ok です。キーワード引数。すでにディレクトリが作成されている場合でもディレクトリの作成を有効にします。存在します。
try:
    os.makedirs("path/to/directory")
except FileExistsError:
    # directory already exists
    pass
ログイン後にコピー
os.makedirs("path/to/directory", exist_ok=True)  # succeeds even if directory exists.
ログイン後にコピー

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

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート