Python Glossary English

Python 3.4+pathlibфункция

.rename()

операции

Переименовывает (перемещает) путь и возвращает новый Path. Поведение при уже существующей цели зависит от ОС — на Windows будет ошибка.

Синтаксис

p.rename(target)

Относительный target отсчитывается от текущей рабочей директории, а не от каталога самого p — p.rename('backup.txt') положит файл туда, откуда запущен скрипт. Затирание существующей цели зависит от ОС: на POSIX перезапишет молча, на Windows кинет FileExistsError, поэтому за одинаковым поведением идите в replace(); через границу файловых систем rename() вообще не работает (OSError) — там нужен shutil.move(). Сам объект p после вызова не меняется, работать дальше надо с возвращённым Path.

Примеры

from pathlib import Path
f = Path('old_path.txt')
f.write_text('data')
new = f.rename('new_path.txt')
new.name # → 'new_path.txt'

См. также

Частые ошибки

Открыть в полном глоссарииdocs.python.orgСообщить о неточности