Работа с файлами в Python, модуль shutil
23.02.2018
Теги: Python • Web-разработка • Директория • Копировать • Модуль • Удалить • Файл
Модуль shutil
(shell utilities — утилиты командной строки) содержит методы, позволяющие копировать, перемещать, переименовывать и удалять файлы. Для этого нужно сперва импортировать модуль.
Метод copy()
предназначен для копирования файлов:
>>> import shutil, os >>> os.chdir('C:\\example') >>> os.listdir() ['image.jpg'] >>> shutil.copy('image.jpg', 'copy.jpg') 'copy.jpg' >>> os.listdir() ['copy.jpg', 'image.jpg'] >>> os.mkdir('images') >>> shutil.copy('copy.jpg', 'images') 'images\\copy.jpg'
Метод copytree()
позволяет копировать директории:
>>> shutil.copytree('images', 'new-dir') 'new-dir' >>> os.chdir('new-dir') >>> os.listdir() ['copy.jpg']
Метод move()
позволяет переместить файл или директорию:
>>> os.listdir() ['copy.jpg', 'image.jpg', 'images', 'new-dir'] >>> shutil.move('copy.jpg', 'images\\new-copy.jpg') # перемещение файла 'images\\new-copy.jpg' >>> shutil.move('images', 'new-dir') # перемещение директории 'new-dir\\images' >>> shutil.move('image.jpg', 'picture.jpg') # переименование файла 'picture.jpg' >>> shutil.move('new-dir', 'old-dir') # переименование директории 'old-dir'
Метод rmtree()
удаляет директорию вместе со всеми поддиректриями и файлами.
>>> shutil.rmtree('old-dir')
Безопасное удаление файлов и директорий
Модуль send2trash
отправляет удаляемые директории и файлы в корзину. Так что при ошибочном удалении их можно восстановить.
>>> import send2trash >>> send2trash.send2trash('images')
Поиск: Python • Web-разработка • Директория • Копировать • Модуль • Удалить • Файл