Справочник по функциям Python

os.makedirs

Создаёт каталог вместе со всеми недостающими родительскими каталогами.

Python 3.13
os.makedirs(name, mode=0o777, exist_ok=False)

Параметры

namestr | PathLike
Путь к каталогу, например data/2026/may.
modeintнеобязательный
Права доступа к последнему каталогу пути, по умолчанию 0o777.
exist_okboolнеобязательный
Если True, существующий каталог не считается ошибкой.

Возвращаемое значение

Ничего (None); если каталог уже есть и exist_ok=False, вызывает FileExistsError.

Примеры

Вложенные каталоги за один вызов

Python 3.13
import os
os.makedirs('data/2026/may', exist_ok=True)
print(os.path.exists('data/2026/may'))
True

Ошибка без exist_ok

Python 3.13
import os
os.makedirs('logs', exist_ok=True)
try:
    os.makedirs('logs')
except FileExistsError:
    print('Already exists')
Already exists

Подробности

Без exist_ok=True повторный запуск программы упадёт с FileExistsError. Для одного каталога без родителей есть os.mkdir.

Смотрите также