Сообщить об ошибке.

Функция removedirs() модуля os в Python

Рекурсивно удалить пустые каталоги

Синтаксис:

import os

os.removedirs(path)

Параметры:

  • path - str путь в файловой системе до каталога.

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

  • None

Описание:

Функция removedirs() модуля os удаляет каталоги рекурсивно. Работает подобно функции os.rmdir() за исключением того, что, если конечный каталог успешно удален, os.removedirs() пытается последовательно удалить каждый родительский каталог, указанный в пути, до появления ошибки. Появления ошибки обычно означает, что родительский каталог не пуст.

Например, os.removedirs('foo/bar/baz') сначала удалит каталог 'foo/bar/baz', затем удалит 'foo/bar' и 'foo', если они пусты. Вызывает исключение OSError, если конечный каталог не может быть успешно удален.

Аргумент path может принимать объекты, представляющие путь файловой системы, такие как pathlib.Path.

Вызывает событие аудита os.remove с аргументами path, dir_fd.

Примеры использования:

>>> import os
>>> d = 'a/b/c/d/test_dir'
>>> os.makedirs(d, 0o774)
>>> os.path.isdir(d)
# True

# удаляем рекурсивно пустые директории
>>> os.removedirs(d)
>>> os.path.isdir(d)
False