Python ZIP-файл із прикладом
⚡ Розумний підсумок
Python створює ZIP-архіви за допомогою вбудованих модулів shutil та zipfile. Тут ви навчитеся стискати цілий каталог за допомогою make_archive(), стискати окремі файли за допомогою ZipFile та extract, перегляд та читання вмісту архіву.

Python дозволяє швидко створювати архіви zip/tar.
Наступна команда заархівує весь каталог
shutil.make_archive(output_filename, 'zip', dir_name)
Наступна команда дає вам контроль над файлами, які ви хочете заархівувати
ZipFile.write(filename)
Як заархівувати весь каталог у ZIP-файлі Python
Ось кроки для створення файлу Zip Python
Крок 1) Для створення архівного файлу з Python, переконайтеся, що ваш імпортний звіт правильний і в порядку. Ось оператор імпорту для архіву from shutil import make_archive
Code Пояснення
- Імпортуйте клас make_archive з модуля shutil
- Використовуйте функцію split, щоб розділити каталог і назву файлу від шляху до розташування текстового файлу (guru99)
- Потім ми викликаємо модуль “shutil.make_archive(“guru99 archive, “zip”, root_dir)” для створення файлу архіву, який буде у форматі zip.
- Після цього ми передаємо в кореневий каталог речі, які ми хочемо заархівувати. Тому все в каталозі буде заархівовано
- Коли ви запустите код, ви побачите, що в правій частині панелі створено архівний zip-файл.
Крок 2) Після створення архівного файлу ви можете клацнути правою кнопкою миші на файлі та вибрати ОС, і в ньому відобразяться ваші архівні файли, як показано нижче
Тепер ваш файл archive.zip з’явиться у вашій ОС (Windows Explorer)
Крок 3) Коли ви двічі клацнете файл, ви побачите список усіх файлів, які там є.
Як архівувати певні файли за допомогою ZipFile
Крок 4) In Python ми можемо мати більше контролю над архівом, оскільки ми можемо визначити, який конкретний файл включити в архів. У нашому випадку ми заархівуємо два файли “guru99.txt” та “guru99.txt.bak”.
Code Пояснення
- Імпортувати клас Zipfile із zip-файлу Python модуль. Цей модуль надає повний контроль над створенням zip-файлів
- Ми створюємо новий Zip-файл з назвою ( «testguru99.zip, «w»)
- Для створення нового класу Zipfile потрібно передати дозвіл, оскільки це файл, тому вам потрібно записати інформацію у файл як newzip
- Ми використали змінну “newzip” для посилання на створений нами zip-файл
- За допомогою функції записи в змінну newzip додаємо в архів файли guru99.txt і guru99.txt.bak
Коли ви виконуєте код, ви можете побачити, як у правій частині панелі створюється файл із назвою «guru99.zip»
Примітка:: тут ми не даємо жодної команди «закрити» файл, як «newzip.close», тому що ми використовуємо блокування області «With», тому, коли програма виходить за межі цієї області, файл буде очищено та закрито автоматично.
Крок 5) Коли ти -> клацніть правою кнопкою миші файл (testguru99.zip) і -> виберіть свою ОС (Windows Explorer), він покаже архівні файли в папці, як показано нижче.
Якщо ви двічі клацнете файл «testguru99.zip», відкриється інше вікно, у якому відображатимуться файли, які містяться в ньому.
Цілковита Python Code створити ZIP-файл
Ось повний код
Python 2 Приклад
import os
import shutil
from zipfile import ZipFile
from os import path
from shutil import make_archive
def main():
# Check if file exists
if path.exists("guru99.txt"):
# get the path to the file in the current directory
src = path.realpath("guru99.txt");
# rename the original file
os.rename("career.guru99.txt","guru99.txt")
# now put things into a ZIP archive
root_dir,tail = path.split(src)
shutil.make_archive("guru99 archive", "zip", root_dir)
# more fine-grained control over ZIP files
with ZipFile("testguru99.zip","w") as newzip:
newzip.write("guru99.txt")
newzip.write("guru99.txt.bak")
if __name__== "__main__":
main()
Python 3 Приклад
import os import shutil from zipfile import ZipFile from os import path from shutil import make_archive # Check if file exists if path.exists("guru99.txt"): # get the path to the file in the current directory src = path.realpath("guru99.txt"); # rename the original file os.rename("career.guru99.txt","guru99.txt") # now put things into a ZIP archive root_dir,tail = path.split(src) shutil.make_archive("guru99 archive","zip",root_dir) # more fine-grained control over ZIP files with ZipFile("testguru99.zip", "w") as newzip: newzip.write("guru99.txt") newzip.write("guru99.txt.bak")
Як поговорити про колишнього чоловікаtract (Розпакувати) ZIP-файл у Python
Щоб розпакувати архів, відкрийте його в режимі читання за допомогою ZipFile та викличте extractall() до extract кожен файл абоtract() для вилучення одного члена.
from zipfile import ZipFile with ZipFile("testguru99.zip", "r") as myzip: myzip.extractall("extracted_files")
КолишнійtracМетод tall() записує всі архівні файли в папку, яку ви передаєте як аргумент.
Як переглянути список файлів у ZIP-архіві Archive
Ви можете ознайомитися з архівом без попереднього запису.tracце. Метод namelist() повертає назви всіх файлів, що зберігаються в ZIP-архіві.
from zipfile import ZipFile with ZipFile("testguru99.zip", "r") as myzip: print(myzip.namelist())
Це виведе список імен файлів, що містяться в архіві.
Як прочитати файл усередині ZIP-архіву Archive
Ви можете прочитати файл учасника безпосередньо з архіву без розпакуванняping його на диск за допомогою методу open() класу ZipFile.
from zipfile import ZipFile with ZipFile("testguru99.zip", "r") as myzip: with myzip.open("guru99.txt") as f: print(f.read())
Це корисно, коли вам потрібен лише вміст одного файлу з великого архіву.







