Иногда возникает задача создать новые директории в процессе работы с файловой системой. В Unix-подобных системах есть удобная команда mkdir -p
, которая создает новую директорию и все необходимые родительские директории, если они еще не существуют.
Например, если нужно создать следующую структуру директорий:
/home/user/documents/work/project
и только директория /home/user
существует на данный момент, то команда mkdir -p /home/user/documents/work/project
удобно создаст все промежуточные директории (documents
, work
) и конечную директорию project
.
Однако, как получить такую же функциональность в Python, не прибегая к системным вызовам? Решение этого вопроса довольно простое, благодаря встроенному модулю os
.
Модуль os
в Python предоставляет множество функций для работы с операционной системой, включая работу с файловой системой. Для создания директории (или директорий) в Python можно использовать функцию os.makedirs()
.
Вот простой пример использования:
import os os.makedirs("/home/user/documents/work/project", exist_ok=True)
В данном примере функция os.makedirs()
принимает два аргумента: путь к создаваемой директории и аргумент exist_ok
. Если exist_ok
равен True
, то Python будет игнорировать ошибки, связанные с тем, что директории уже существуют, что аналогично поведению команды mkdir -p
. В противном случае, если директория уже существует, будет выброшено исключение FileExistsError
.
Таким образом, функция os.makedirs()
предоставляет функциональность, аналогичную mkdir -p
, и позволяет удобно создавать директории прямо из Python кода.
Добавить комментарий