В этой статье показано, как в Python можно создать каталог и все отсутствующие родительские элементы этого каталога.

Использовать pathlib.Path.mkdir

Начиная с Python 3.5 лучший и самый простой способ создать вложенный каталог — использовать pathlib.Path.mkdir :

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

 

Если для родителей задано значение true, все отсутствующие родительские элементы этого пути создаются по мере необходимости (убедитесь, что у вас есть необходимые разрешения для этого пути).

Если parent имеет значение false (по умолчанию), отсутствующий родитель вызывает FileNotFoundError .

Если exists_ok имеет значение false (по умолчанию), FileExistsError возникает, если целевой каталог уже существует.

Если для exists_ok установлено значение true, исключения FileExistsError будут игнорироваться, но только в том случае, если последний компонент пути не является существующим файлом, не являющимся каталогом.

 

Использовать os.path.makedirs

Для более старых версий Python os.path.makedirs можно использовать вместе с os.path.exists :

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

Имейте в виду, что в редких случаях здесь может возникнуть состояние гонки — если каталог создается между вызовами и, os.path.existsпроизойдет сбой с OSError . Более подробную информацию об этом можно найти здесь os.makedirsos.makedirs

Используйте Pathlib, чтобы проверить, существует ли файл

Модуль pathlib также очень полезен для проверки существования файла или каталога в Python.


0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest
0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии