Python shutil.move (): как переместить файл в Python

Чтобы переместить файл в Python, мы можем использовать два модуля.

  1. Функция Python os.rename ()
  2. Python shutil .move () метод

Если файл не найден по указанному пути, он вернет FileError.

Move файл в Python с помощью функции os.rename ()

Python os.rename () переименовывает файл или каталог src в dist.

Если dst — это файл или каталог (уже присутствующий), то будет выдана ошибка OSError.

Синтаксис

 os.rename (src, dst) 

Параметры

  1. src — это обязательный параметр, и это фактическое имя файл или каталог.

  2. dst — это обязательный параметр, и это новое имя файла или каталог.

Функция не возвращает никаких значений.

Допустим, у нас есть один файл с именем data. csv, и нам нужно переместить этот файл в другую папку с именем app, которая находится на том же уровне каталога, что и файл data.csv .

См. следующий код, чтобы переместить файл в папку app .

 import os # Переместите файл, переименовав его в pathos.rename ('data.csv', 'app/data.csv') print ('Файл успешно перемещен в другое место назначения') 

Вывод

 Файл успешно перемещен в другое место назначения 

Исходя из вывода, вы можете надеяться, что файл перемещен в новое место назначения, и вы можете проверить папку app , и файл будет там. Содержание файла не изменится. Так что не беспокойтесь об этом.

Файл перемещения Python: FileNotFoundError

Если вы повторно запустите приведенный выше код, то файл не будет, потому что он уже перемещен.

Таким образом, исходный файл не будет перемещаться, и мы получим FileNotFoundError.

См. вывод.

 Traceback (последний вызов последним): файл "app.py", строка 4, в  os.rename ('data.csv', 'app/data.csv') FileNotFoundError: [Errno 2] Нет такого файла или каталога: 'data.csv' -> 'app/data.csv' 

Вам необходимо правильно настроить Source для правильной работы, а также иметь в виду, что для работы этого примера должен существовать целевой каталог.

Обработка возможных ошибок при перемещении файла в Python

См. следующий код.

 # импорт os moduleimport os # Исходный файл pathsource = 'data.csv' # конечный файл  pathdest = 'app/data.csv' # попробуйте переименовать исходный путь # в целевой # с помощью метода os.rename ()  попробуйте: os. rename (source, dest) print ("Файл успешно перемещен") # Если Source - это файл # но место назначения - это каталог, за исключением IsADirectoryError: print ("Источник - файл, а место назначения - каталог.") # Если источник - это каталог.  # но местом назначения является файл, кроме NotADirectoryError: print ("Источник - каталог, а место назначения - файл.") # Для ошибок, связанных с правами доступа, кроме PermissionError: print ("Операция запрещена.") # Для других ошибок, кроме OSError как error: print (error  ) 

Вывод

 python3 app.pyФайл успешно перемещен 

Переместите файл в Python с помощью функции shutil.move ()

Функция shutil.move () Python рекурсивно перемещает файл или каталог (источник) в другое место (место назначения) и возвращает дест. Если каталог назначения уже существует, то src перемещается внутрь этого каталога.

Синтаксис

 shutil.move (src, dest  , copy_function = copy2) 

Параметры

src : строка, представляющая путь к исходный файл.
dest : это строка, представляющая путь к целевому каталогу.
copy_function ( optional ): это необязательный параметр, значение по умолчанию — copy2. Для этого параметра мы можем использовать другие функции копирования, такие как copy, copytree и т. Д.

Пример метода shutil.move ()

См. следующий код.

 # импорт shutil moduleimport shutil # Source file pathsource = 'data.csv' # destination file pathdest = 'app/data.csv' # попытаться переместить источник  файл # по пути назначения # с помощью метода shutil.move () # и возврата пути к целевому файлу: dest = shutil.move (source, dest) print ("Файл успешно перемещен в:", dest) # Если источником является файл  но местом назначения является каталог, за исключением IsADirectoryError: print ("Источник - файл, а место назначения - каталог.") # Если источником является каталог, # но местом назначения является файл, кроме NotADirectoryError: print ("Источник - это каталог, а место назначения - файл."  ) # Для ошибок, связанных с разрешениями, кроме PermissionError: print ("Операция запрещена.") # Для других ошибок, кроме OSError как error: print (error) 

Вывод

 Файл успешно перемещен в: app/data.cs  v 

Заключение

Python предоставляет два модуля os и shutil для выполнения операций файловой системы, и мы видели оба модуля и его методы для перемещения файла.

Наконец, пример перемещения файла в Python завершен.

См. также

Как открыть файл в Python

Как прочитать файл в Python

Как написать файл в Python

Как переименовать файл в Python

Как скопировать файл в Python

Оцените статью
nanomode.ru
Добавить комментарий