import os os.renames(old, new)
Функция renames()
модуля os
рекурсивно переименовывает пустые директории или переименовывает конечный файл.
Работает подобно os.rename()
, за исключением того, что сначала пытается создать любые промежуточные каталоги, необходимые для создания нового пути файловой системы. После переименования каталоги, соответствующие крайним правым сегментам пути старого имени, будут удалены с помощью функции os.removedirs()
.
Аргументы old
и new
могут принимать объекты, представляющие путь файловой системы, такие как pathlib.PurePath
.
Примечание. Эта функция может не работать с созданной новой структурой каталогов, если у вас нет прав, необходимых для удаления конечного каталога или файла.
Вызывает событие аудита os.rename
с аргументами src
, dst
, src_dir_fd
, dst_dir_fd
.
>>> import os >>> old = 'a/b/c/old' >>> new = 'foo/bar/baz/new' >>> os.makedirs(old, 0o774) >>> os.path.isdir(old) # True # рекурсивно переименовываем пустые директории >>> os.renames(old, new) >>> os.path.isdir(new) # True # Очистка >>> os.removedirs(new) >>> os.path.isdir(new) # False