exception - Python 例外 自作 - ネストしたディレクトリを安全に作成するにはどうしたらいいですか?

python 例外処理 ベストプラクティス / python / path / directory / operating-system

ファイルを書き込もうとしているディレクトリが存在するかどうかをチェックし、存在しない場合はPythonを使ってディレクトリを作成する最もエレガントな方法は何でしょうか?以下は私が試したものです。

import os

file_path = "/my/directory/filename.txt"
directory = os.path.dirname(file_path)

try:
    os.stat(directory)
except:
    os.mkdir(directory)       

f = file(filename)
def ensure_dir(file_path):
    directory = os.path.dirname(file_path)
    if not os.path.exists(directory):
        os.makedirs(directory)

Georgy



Answer #1
os.makedirs(path,exist_ok=True)
import os
import errno

def make_sure_path_exists(path):
    try:
        os.makedirs(path)
    except OSError as exception:
        if exception.errno != errno.EEXIST:
            raise