Как сделать копию файла python
shutil есть много методов, которые вы можете использовать. Один из которых:
скопировать содержимое файла с именем src в файл с именем dst . Место назначения должно быть доступно для записи; в противном случае IOError исключение. Если dst уже существует, он будет заменен. Специальные файлы, такие как символьные или блочные устройства и трубы не могут быть скопированы с помощью этой функции. src и dst - Это имена путей, заданные в виде строк.
copy2(src,dst) часто более полезно, чем copyfile(src,dst) потому что:
- позволяет dst быть каталог (вместо полного целевого имени файла), в этом случае имени of src используется для создания нового файла;
- он сохраняет исходную информацию о модификации и доступе (mtime и atime) в метаданных файла (однако это происходит с небольшим надземный.)
вот краткий пример:
копирование файла является относительно простой операцией, как показано в приведенных ниже примерах, но вместо этого вы должны использовать модуль shutil stdlib для этого.
Если вы хотите скопировать по имени файла, вы можете сделать что-то вроде этого:
скопируйте содержимое файла с именем src в файл с именем dst. Место назначения должно быть доступно для записи; в противном случае будет вызвано исключение IOError. Если DST уже существует, он будет заменен. Специальные файлы, такие как символьные или блочные устройства и трубы не могут быть скопированы с помощью этой функции. src и dst-это имена путей, заданные в виде строк.
посмотри файловая система для всего файла и функции обработки каталогов, доступные в стандартных модулях Python.
Python предоставляет встроенные функции для простого копирования файлов с помощью утилит операционной системы.
Следующая команда используется для копирования файла
Следующая команда используется для копирования файла с информацией метаданных
Вот шаги, чтобы скопировать файл в Python
Шаг 1) Прежде, чем мы скопируем файл, нам нужно получить путь к исходному файлу в текущем каталоге. В коде —
- Объявление переменной
- Применение функции разделения к переменной
Код Объяснение
После того как вы удалили файл и запустили программу, она создаст копию вашего файла .txt, но на этот раз со всей информацией, такой как разрешение файла, время изменения и информация метаданных . Вы можете перейти в свою оболочку ОС, чтобы проверить информацию.
Step 4) You can fetch the information about the text file last modified
Статьи
В этой статье вы узнаете 10 основных функций, которые позволят вам работать с файловыми операциями высокого уровня с помощью встроенной библиотеки shutil в Python.
Введение
Во-первых, модуль shutil в Python предоставляет множество функций для выполнения высокоуровневых операций с файлами и коллекциями файлов.
Во — вторых, это встроенный модуль, который поставляется с в процессе установки языка программирования Python.
В-третьих, этот модуль также заботится о низкоуровневой семантике, такой как создание или закрытие файлов после их копирования и фокусировка на бизнес-логике.
Основная документации по этому модулю находится на оффициальном сайте Python.
Основной синтаксис для использования модуля shutil выглядит следующим образом:
Метод shutil.copy
shutil.copy это функция используется для копирования содержимого или текста исходного файла в конечный файл или каталоги. Она также сохраняет режим разрешений файла, но другой тип метаданных файла, такой как создание файла и его модификация, не сохраняется.
Пример написания кода:
Объяснение: В этом коде, во-первых, я проверяю файлы, присутствующие в каталоге. Во-вторых, я печатаю права доступа к файлу и даю исходный путь к файлу. В-третьих, я даю путь назначения копии содержимого там в новом файле. Наконец, я снова распечатываю все файлы в каталоге и проверяю, была ли создана копия этого файла или нет.
Метод shutil.copy2
Если что, эта функция точно такая же, как функция copy(), за исключением того, что она поддерживает метаданные исходного файла.
Объяснение: В этом коде я написал функцию copy2 — это то же самое, что и copy, просто она выполняет одну дополнительную операцию, которая поддерживает метаданные.
Метод shutil.copyfile
В этом файле функции копируются имена, что означает, что исходный файл копируется по указанному имени в том же каталоге. Файл сообщает, что дубликат файла присутствует в том же каталоге.
Объяснение: В этом коде я написал функцию copyfile, то же имя файла копируется для нового файла, просто копия добавляется в новое имя файла. Смотрите в выходных данных.
Метод shutil.copytree
Эта функция копирует файл и подкаталоги из одного каталога в другой. Это означает, что файл присутствует как в источнике, так и в месте назначения. Имена обоих параметров должны быть в строке.
Объяснение: В этом коде я написал функцию copytree, чтобы получить дубликат этого файла.
Метод shutil.rmtree
Эта функция используется для удаления конкретного файла и подкаталога из указанного каталога, что означает, что каталог удаляется из системы.
Объяснение: В этом коде я написал функцию rmtree, которая используется для удаления файла или каталога. Во-первых, я перечислил все файлы и применил функцию удаления, а затем снова перечислил файл, чтобы увидеть, удален он или нет.
Метод shutil.which
Функция which — это отличный инструмент, который используется для поиска пути к файлу в вашем компьютере, чтобы легко добраться до конкретного места назначения, зная название файла.
Объяснение: В этом коде я написал функцию which, чтобы при необходимости найти любой из файлов.
Метод shutil.disk_usage
Эта функция используется для того, чтобы понять, сколько информации присутствует в нашей файловой системе, просто вызвав функцию disk_usage.
Объяснение: В этом коде я написал функцию disk_usage, чтобы узнать об общем, используемом и свободном дисковом пространстве.
Метод shutil.move
Эта функция используется для перемещения файла и каталога из одного каталога в другой и удаления его из предыдущего каталога. Её также можно назвать переименованием файла или каталога.
Очень простой код:
Объяснение: В этом коде я написал функцию move для перемещения файла или каталога из одного места в другое.
Метод shutil.make_archive
Эта функция используется для создания архива (zip или tar) файлов в корневом каталоге.
Метод shutil.get_archive_formats
Эта функция дает нам все поддерживаемые форматы архивов в файле или каталоге.
Объяснение: В этом коде я написал функцию get_archive_formats, чтобы получить вспомогательные форматы архивов в файле или каталоге.
Преимущества модуля
Вот 2 существенных плюса:
- Модуль shutil поможет вам в автоматизации копирования файлов и каталогов.
- Этот модуль сохраняет шаги открытия, чтения, записи и закрытия файлов, когда фактической обработки нет, просто перемещая файлы.
Заключение
В этой статье вы изучили множество типов операций, которые позволяют нам работать с файловыми операциями высокого уровня, такими как копирование содержимого файла, создание новой копии файла и т.д. без погружения в сложные операции обработки файлов с помощью модуля shutil в Python.
Перемещать и копировать файлы по каталогам нам поможет функции модуля shutil. Подключаем модуль shutil в начале нашего скрипта на Python, потом уже получим доступ к его функциям. Функции модуля shutil не ограничиваются только на копирование и перемещение, мы обсудим разные методики использования функции даного модуля.
Функция copyfile(Копируемый файл, путь куда копируем)
Копирует содержимое файла по указанному пути и создает новый в указанном во втором параметре месте. Методанные при этом не копируются т.е. права доступа и т.д. Если место куда мы копируем уже имеет такой файл он будет перезаписан. В случае неудачи копирования, возбуждается исключение IOError.
Функция copy(Копируемый файл, куда копируем)
Копирует файл вместе с его правами. В случае если файл уже существовал, он будет перезаписан. Неудачное копирование вызовет исключение IOError.
Функция copy2(Копируемый файл, путь куда копируем)
Копирует файл вместе с его методанными. Если файл уже существует, он будет перезаписан.
Перемещение файла, функция move(путь к файлу, путь куда перемещать)
Копирует файл из указанного места, создает новый или перезаписывает уже существующий по новому пути. После выполнения копирования, копируемый файл удаляется. Бывает случай, что файл не удается удалить, в Windows возбуждается исключение WindowsError.
Летняя жара дает о себе знать, программируя нельзя концентрироваться из за сухого воздуха и душной обстановки. Решить данную проблему можно установив инверторные кондиционеры Mitsubishi у себя дома или в офисе. Сделайте себе и окружающим приятно.
Читайте также: