Курс 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"
- Удаление элемента по индексу
- Работа с классами данных
- Измерение времени выполнения кода с помощью time
- Повторение и перенос строки
- Именованные срезы в Python
- Генераторы списков в Python
- Ускорение обработки данных с %autoawait
- Секреты Python
- Ускоренный импорт библиотек
- Проверка дублей в списке.
- Переменные класса и экземпляра
- Модуль inspect: получение информации о объектах
- Повторение элементов в Python
- Оптимизация методов в Python 3.7
- Мощь вложенных функций в Python
- Работа с функцией next() в Python
- Оператор += в Python
- Значения по умолчанию в Python
- Замена символов в Python
- Работа с кортежами в Python
- Удаление дубликатов из списка с помощью dict.fromkeys
- Проверка вхождения подстроки
- Расширение операции побитового «и» в Python
- Конструктор в Python
- Конвертация текстовых чисел с помощью Numerizer
- Цикл for с enumerate() в Python
- Перегрузка операторов в Python
- Модуль functools в Python
- Установка и использование howdoi
- Сравнение def и lambda в Python
- Бесконечные списки в Python
- Вставка переменных в шаблоны Flask
- Magic Commands — улучшение работы с Python
- Создание директории в Python
- Импорт модулей в Python 3.12
- Модуль inspect
- Объявление переменных в Python
- Функция reversed() в Python
- Правила именования переменных
- Python Метод sleep() времени
- Метод split() в Python
- Работа с модулем glob в Python
- Функции map, filter, reduce
- Аннотации типов в Python
- Сортировка в Python
- Удаление дубликатов в pandas
- Поиск кода
- Конкатенация строковых литералов















