Файл используется для постоянного хранения данных. Иногда нам требуется переместить расположение файла с одного пути на другой для целей программирования. Эту задачу можно выполнить с помощью скрипта Python несколькими способами. Move() – это наиболее часто используемый метод Python для перемещения файла из одного каталога в другой каталог, определенный в модуле shutil. Другой способ перемещения файла с помощью метода rename(), который определен в модуле os. Эти два метода можно использовать для перемещения файла из одного каталога в другой, как описано в этой статье.
Пример 1: Переместить файл с исходным именем
Способ перемещения файла из одного места в другое с исходным именем показан в следующем скрипте. Модуль shutil импортируется в скрипт для использования функции move() для перемещения файла. Модуль пути импортируется для использования функции exists() для проверки того, существует ли данное имя файла или нет. Если файл существует, будет определен целевой путь к файлу, куда он будет перемещен. Место назначения будет напечатано после перемещения файла. Если файл не существует, будет напечатано сообщение об ошибке.
# Импортировать модуль shutil import shutil # Импортировать модуль пути из ОС from os import path # Задайте имя файла с путем source_path = "fruit.txt" # Проверьте, существует ли файл if path.exists(source_path): # Задайте путь к каталогу, в который будет перемещен файл destination_path = "Files" # Переместите файл в новое место new_location = shutil.move(source_path, destination_path) # Распечатать новое расположение файла print("% s перемещен в указанное место,% s" % (source_path , new_location)) else : # Распечатать сообщение, если файл не существует print ("Файл не существует.")
Вывод
Здесь файл fruit.txt существует, и он перемещен в папку Files.
Пример 2. Переместить файл с новым именем
Способ перемещения файла из одного места в другое путем переименования файла показан в следующем сценарии. Модули shutil и path были импортированы для перемещения файла и проверки его существования. Новое имя файла определено в пути назначения файла. Если файл перемещен успешно, то путь к файлу с новым именем будет напечатан, иначе будет напечатано сообщение об ошибке.
# Импорт модуля shutil import shutil # Импорта из OS from os import path # Установить имя файла с путем source_path = «dept.txt» # Проверьте файл существует или нет if path.exists(source_path): # Задайте путь к каталогу назначения с новым именем destination_path = "Files/department.txt" # Переместите файл в новое место new_location = shutil.move(source_path, destination_path) # Распечатать новое расположение файла print("{0} перемещается в нужное место, {1}".format(source_path,new_location)) else: # Распечатать сообщение, если файл не существует print("Неверный путь к файлу.")
Вывод
Здесь, файл, dept.txt, существует, и он был переименован с именем department.txt и перемещено в папку Files.
Пример 3. Перемещение папки с несколькими файлами
Способ перемещения папки с несколькими файлами показан в следующем сценарии. Здесь переменная source_path содержит исходный путь к папке, а переменная destination_path содержит путь к целевой папке. Остальное содержимое сценария такое же, как в двух предыдущих примерах.
# Импортировать модуль shutil import shutil # Импортировать модуль пути из ОС from os import path # Установить путь к каталогу файлов для перемещения source_path = "Images/dice" # Проверить, существует if path.exists(source_path): # Задайте путь к каталогу destination_path = "Files/dice" # Переместите каталог с файлами в новое место new_location = shutil . ход ( source_path , destination_path ) # Распечатать новое расположение new_location = shutil.move(source_path, destination_path) else : # Распечатать сообщение, если путь к каталогу не существует print("Недопустимое расположение каталога.")
Вывод
Согласно сценарию, папка dice переместилась в папку Files/dice.
Пример 4. Перемещение всех файлов и папок определенного каталога
Способ перемещения одной папки с несколькими файлами был показан в предыдущем примере. Но папка или каталог может также содержать несколько папок с несколькими файлами. В этом примере показано, как переместить этот тип папки в другое место. Модуль os был импортирован в этот сценарий для использования функции rename(), которая перемещает содержимое папки с вложенными папками и несколькими файлами. Функция listdir() используется для создания списка файлов и папок исходной папки. Затем цикл for использовался для повторения списка и перемещения содержимого исходной папки в целевую папку с помощью функции rename().
# Импортировать модуль os import os # Установить путь к каталогу файлов для перемещения source_path = "documents/" # Проверить, существует ли путь к каталогу, if os.path.exists(source_path): # Задайте путь к каталогу destination_path = "Files/" # Создайте список файлов и папок исходного пути filelist = os.listdir(source_path) # Итерировать список файлов и папок for file in filelist: os.rename(source_path + file, destination_path + file) # Распечатать новое местоположение print("Все файлы и папки {0} перемещаются в нужное место, {1}".format(source_path, destination_path)) else: # Распечатать сообщение если путь к каталогу не существует, print("Неверный путь к каталогу.")
Вывод
По сценарию все файлы и папки папки с документами переместились в папку Files.
Вывод
В этой статье показаны различные способы перемещения одного или нескольких файлов. Использование модулей shutil и os для перемещения файлов и папок было объяснено на простом примере, который легко помогает пользователям python выполнять этот тип задач.