Курс 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. Конструктор в Python
  2. Роль ключевого слова self
  3. Проверка на палиндром
  4. Оператор * в Python
  5. Работа с collections.Counter
  6. Ускорение выполнения кода в Python
  7. Обработка исключений с блоком else
  8. Экспорт данных с помощью writefile
  9. Numpy: объединение массивов
  10. Создание генераторов в Python
  11. Ускоренный импорт библиотек
  12. Структура данных словарь в Python
  13. Замена символов в строке
  14. Работа с CSV файлами в Python
  15. Область видимости переменных
  16. Переопределение метода len
  17. Работа с множествами в Python
  18. Метод join() для объединения строк
  19. Python Calendar Usage
  20. Проверка подстроки в строке
  21. Установка и использование TensorFlow
  22. Работа с итераторами в Python
  23. Удаление элементов во время итерации
  24. Разделение строки в Python
  25. Роль запятой в Python
  26. Построение графиков в Matplotlib
  27. Настройка логгера Logzero
  28. Добавление элементов в список
  29. Типы возвращаемых значений в Python
  30. Очистка данных с помощью pandas
  31. Методы __repr__ и __str__ в Python
  32. Установка и использование howdoi
  33. Обработка исключений в Python
  34. Управление ресурсами в Python
  35. Python reversed() vs срез[::-1]
  36. Особенности ключей словаря в Python
  37. Идентификатор объекта в Python
  38. Псевдонимы в Python
  39. Работа с пользовательским вводом
  40. Сложение матриц в NumPy
  41. Определение индекса элемента списка
  42. Проблема с изменяемыми аргументами
  43. Переопределение унарных операторов
  44. Оптимизация интернирования строк

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