Курс 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. Управление IP-адресами через прокси
  3. Логические значения в Python
  4. Управление импортом в Python
  5. Преобразование в float
  6. Очистка данных с помощью pandas
  7. Область видимости переменных
  8. Работа со словарями с defaultdict из collections
  9. Изменение элемента списка
  10. Перевод текста с Python Translator
  11. Списковые включения в Python
  12. Создание словаря и множества
  13. Функция product() из itertools
  14. Проверка наличия элемента в списке
  15. Преобразование текста в нижний регистр
  16. Работа с атрибутом dict
  17. 9 уловок для чистого кода
  18. Проверка элемента в множестве.
  19. Работа с getopt
  20. Работа с файлами и директориями в Python.
  21. Метаклассы в Python
  22. Замена текста в Python
  23. Работа с модулем random
  24. Выражения-генераторы в Python
  25. Метод rmatmul для пользовательских матриц
  26. Работа с датой и временем в Python
  27. Генерация случайных чисел в Python
  28. Генерация чисел с range()
  29. Функция enumerate() — Python
  30. Запуск Python из интерпретатора
  31. Создание функций с произвольным количеством аргументов
  32. Именованные срезы в Python
  33. Управление асинхронными задачами на Python.
  34. Отправка поздравлений по дню рождения
  35. Модуль math: константы π и e
  36. split() без разделителя
  37. Удаление пробелов методом translate()
  38. Numpy: объединение массивов
  39. Профилирование кода на Python
  40. Создание новых функций с помощью functools.partial
  41. Расчет времени выполнения
  42. Исключение NotImplementedError
  43. Шаблоны Flask: условия и циклы
  44. Метод get() для словарей
  45. Проверка на истинность объектов в Python
  46. Python OrderedDict и fromkeys() — работа с словарями
  47. Объединение списков в Python

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