Python File ZIP dengan Contoh
Python memungkinkan Anda membuat arsip zip/tar dengan cepat.
Perintah berikut akan menzip seluruh direktori
shutil.make_archive(output_filename, 'zip', dir_name)
Perintah berikut memberi Anda kendali atas file yang ingin Anda arsipkan
ZipFile.write(filename)
Berikut langkah-langkah membuat File Zip Python
Langkah 1) Untuk membuat file arsip dari Python, pastikan Anda memiliki pernyataan impor yang benar dan sesuai urutan. Berikut pernyataan impor untuk arsip tersebut from shutil import make_archive
Penjelasan Kode
- Impor kelas make_archive dari modul shutil
- Gunakan fungsi split untuk memisahkan direktori dan nama file dari jalur ke lokasi file teks (guru99)
- Kemudian kita panggil modul โshutil.make_archive(โguru99 archive, โzipโ, root_dir)โ untuk membuat file arsip, yang akan berformat zip
- Setelah itu kita memasukkan direktori root dari hal-hal yang ingin kita zip. Jadi semua yang ada di direktori akan di-zip
- Ketika Anda menjalankan kode, Anda dapat melihat file zip arsip dibuat di sisi kanan panel.
Langkah 2) Setelah file arsip Anda dibuat, Anda dapat mengklik kanan pada file tersebut dan memilih OS, dan itu akan menampilkan file arsip Anda di dalamnya seperti yang ditunjukkan di bawah ini
Sekarang file archive.zip Anda akan muncul di OS Anda (Windows Penjelajah)
Langkah 3) Ketika Anda mengklik dua kali pada berkas tersebut, Anda akan melihat daftar semua berkas di sana.
Langkah 4) In Python kita dapat memiliki kontrol lebih terhadap arsip karena kita dapat menentukan file spesifik mana yang akan dimasukkan ke dalam arsip. Dalam kasus kita, kita akan memasukkan dua file ke dalam arsip โguru99.txtโ dan โguru99.txt.bakโ.
Penjelasan Kode
- Impor kelas Zipfile dari file zip Python modul. Modul ini memberikan kontrol penuh atas pembuatan file zip
- Kami membuat Zipfile baru dengan nama ( โtestguru99.zip, โwโ)
- Membuat kelas Zipfile baru, memerlukan izin karena ini adalah file, jadi Anda perlu menulis informasi ke dalam file sebagai newzip
- Kami menggunakan variabel "newzip" untuk merujuk ke file zip yang kami buat
- Dengan menggunakan fungsi tulis pada variabel โnewzipโ, kita menambahkan file โguru99.txtโ dan โguru99.txt.bakโ ke dalam arsip
Saat Anda menjalankan kode, Anda dapat melihat file dibuat di sisi kanan panel dengan nama โguru99.zipโ
Note: Di sini kami tidak memberikan perintah apa pun untuk โmenutupโ file seperti โnewzip.closeโ karena kami menggunakan kunci cakupan โDenganโ, jadi ketika program berada di luar cakupan ini, file akan dibersihkan dan ditutup secara otomatis.
Langkah 5) Bila Anda -> klik kanan pada file (testguru99.zip) dan -> pilih OS Anda (Windows Penjelajah), ini akan menampilkan file arsip dalam folder seperti yang ditunjukkan di bawah ini.
Ketika Anda mengklik dua kali pada file โtestguru99.zipโ, maka akan terbuka jendela lain yang akan menampilkan file-file yang ada di dalamnya.
Berikut kode lengkapnya
Python 2 Contoh
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 Contoh
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")
Ringkasan
- Untuk menzip seluruh direktori gunakan perintah โshutil.make_archive(โnameโ,โzipโ, root_dir)
- Untuk memilih file yang akan di-zip, gunakan perintah โZipFile.write(nama file)โ







