Один из распространенных сценариев использования Python — это автоматизация различных задач, связанных с файлами. В частности, распаковка zip-файлов. Например, предположим, что у вас есть архивированный файл archive.zip
, который содержит несколько файлов и папок, и вам нужно распаковать все эти файлы в текущий рабочий каталог.
Python предоставляет встроенный модуль zipfile
для работы с zip-файлами. Однако, в официальной документации Python, может быть не совсем понятно, как использовать этот модуль для распаковки файлов.
Освойте Python на курсе от Skypro. Вас ждут 400 часов обучения и практики (достаточно десяти часов в неделю), подготовка проектов для портфолио, индивидуальная проверка домашних заданий и помощь опытных наставников. Получится, даже если у вас нет опыта в IT.
Распаковка zip-файла с помощью Python
Вот базовый сценарий, который позволяет распаковать zip-файл с использованием модуля zipfile
.
import zipfile with zipfile.ZipFile('archive.zip', 'r') as zip_ref: zip_ref.extractall()
В этом примере, zipfile.ZipFile
используется для открытия zip-файла в режиме чтения (‘r’). Метод extractall()
затем вызывается для распаковки всех файлов и папок из zip-файла в текущий рабочий каталог.
Указание каталога для распаковки
Метод extractall()
может также принимать необязательный аргумент path
, который определяет каталог, в который будут распакованы файлы. Например, чтобы распаковать файлы в каталог unpacked_files
, можно использовать следующий код:
import zipfile with zipfile.ZipFile('archive.zip', 'r') as zip_ref: zip_ref.extractall('unpacked_files')
Изучайте Python на онлайн-курсе от Skypro «Python-разработчик». Программа рассчитана на новичков без опыта программирования и технического образования. Курс проходит в формате записанных коротких видеолекций. Будет много проверочных заданий и мастер-классов. В конце каждой недели — живая встреча с экспертами в разработке для ответов на вопросы и разбора домашек.
Заключение
Модуль zipfile
в Python предоставляет простой и удобный интерфейс для работы с zip-файлами, включая их распаковку. Используя этот модуль, можно легко автоматизировать задачи, связанные с архивацией и распаковкой файлов.
Добавить комментарий