Курс 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"
- Создание задания в Cron
- Изменение логики работы с временем
- Concrete Paths — метод .with_suffix()
- JSON в Python: модуль, dump, dumps, load
- Метод pop() списка
- Поиск индексов в списке
- Цикл while в Python
- Функция pow() — возвести число в степень
- Объединение словарей в Python 3.5+
- Работа с множествами в Python
- Работа с эмодзи в Python
- Генератор бросков кубиков
- Метод join() для объединения элементов строки
- Управление контекстом выполнения
- Моржовый оператор в Python 3.8
- Аргументы *args и **kwargs
- Подсчет элементов в списке с Counter
- Бинарный поиск
- Установка пакетов с помощью pip
- Считывание бинарного файла в Python
- Открытие, чтение и закрытие файла
- Значения по умолчанию в Python
- Парсинг статей с Newspaper3k
- Установка Home Assistant
- Статическая типизация в Python
- Вызов внешних программ в Python с помощью sh
- Защита данных в Python
- Работа с f-строками 2.0
- Метод Event.wait() в Python
- Принципы Zen Python
- Новшества Flask 2.0
- Поиск HTML-элементов с BeautifulSoup
- Проверка кортежей.
- Сумма элементов списка
- Подсчет частотности элементов в Python
- Управление памятью в numpy.
- Фильтрация последовательности
- Транспонирование 2D-массива с помощью zip
- Отслеживание выполнения программы с библиотекой tqdm
- Метод __ixor__ для побитового исключающего ИЛИ
- Проверка надежности пароля на Python
- Документирование функций в Python
- Функции map() и reduce() в Python
- Метод setdefault() в Python
- Обновление данных через PUT запрос
- Сглаживание списка
- Область видимости переменных















