Курс Python → Работа с файлами в Python

Модуль shutil в Python предоставляет разработчикам мощный инструмент для обработки файлов. Несмотря на свое смешное название, эта библиотека является неотъемлемой частью стандартной библиотеки Python и предлагает широкие возможности для работы с файловой системой. В отличие от модуля os, который также используется для работы с файлами, shutil предоставляет более высокоуровневые функции, что делает код более красивым и эффективным.

Одним из примеров использования модуля shutil является функция copyfileobj, которая копирует содержимое одного файла в другой. Это может быть полезно, если вам нужно создать копию файла или перенести данные из одного файла в другой. Также с помощью функции copymode можно скопировать права доступа из одного файла в другой, а функция copystat позволяет скопировать метаданные файла, такие как дата последнего доступа и изменения.

Кроме работы с отдельными файлами, модуль shutil также предоставляет возможность работы с архивами. Например, функция get_archive_formats позволяет узнать доступные форматы архивов, с которыми можно работать. Это может быть полезно, если вам нужно создать архив или извлечь данные из архива.


import shutil

# Пример использования функции copyfileobj
with open('source.txt', 'rb') as fsrc:
    with open('destination.txt', 'wb') as fdst:
        shutil.copyfileobj(fsrc, fdst)

# Пример использования функции copystat
shutil.copystat('source.txt', 'destination.txt')

# Пример использования функции get_archive_formats
formats = shutil.get_archive_formats()
print(formats)

Таким образом, модуль shutil предоставляет разработчикам удобные инструменты для работы с файлами и архивами в Python. Комбинирование функций из модулей os и shutil позволяет создавать эффективный и чистый код, который облегчает работу с файловой системой и архивами.

Твои коллеги будут рады, поделись в

Автор урока

Дмитрий Комаровский
Дмитрий Комаровский

Автоматизация процессов
в КраснодарБанки.ру

Другие уроки курса "Python"

  1. Проверка вхождения подстроки
  2. Преобразование текста в нижний регистр
  3. Возврат нескольких значений
  4. Метод invert для побитового отрицания
  5. Объединение списков в Python
  6. Измерение времени выполнения кода в Python
  7. Именованные кортежи в Python
  8. Создание OrderedDict
  9. Модуль math: константы π и e
  10. Методы shutil для работы с файлами
  11. Управление контекстом выполнения
  12. Numpy: разбиение массивов
  13. Создание циклической ссылки
  14. Изменение объектов в Python
  15. Обработка ошибок в Python
  16. Метод getitem для доступа к элементам последовательности
  17. Отношения подклассов в Python
  18. Область видимости переменных
  19. Передача аргументов в Python
  20. Создание namedtuple из словаря
  21. Метод bool() в Python
  22. Вставка переменных в шаблоны Flask
  23. Работа с изменяемыми списками
  24. Логические значения в Python
  25. Явный импорт в Python
  26. Создание генераторов в Python
  27. Работа со слайсами
  28. Удаление элемента из списка в Python
  29. Преобразование чисел в слова
  30. Разделение списка на гнппы
  31. Создание новых функций через partial
  32. Получение ID процесса
  33. Изменение логики работы с временем
  34. Python Translator: создание локальных переводчиков
  35. Преобразование регистра символов
  36. Добавление элементов в список: append() vs extend()
  37. Функции с дополнением
  38. 9 уловок для чистого кода
  39. Оператор in в Python
  40. Инициализация переменных
  41. Метод radd для пользовательских чисел
  42. Concrete Paths — метод .with_suffix()
  43. Преобразование данных в Python
  44. Метод ipow для возведения в степень
  45. Удаление ключа из словаря в Python
  46. Функции в одну строку

Marketello читают маркетологи из крутых компаний