Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk mengendalikan pemampatan dan penyahmampatan fail dalam Python

Bagaimana untuk mengendalikan pemampatan dan penyahmampatan fail dalam Python

PHPz
PHPzasal
2023-10-10 11:00:11799semak imbas

Bagaimana untuk mengendalikan pemampatan dan penyahmampatan fail dalam Python

Cara mengendalikan pemampatan dan penyahmampatan fail dalam Python

Pengenalan:
Dalam pembangunan dan kerja harian, kita sering Anda akan hadapi masalah yang memerlukan anda mengendalikan pemampatan dan penyahmampatan fail. Python menyediakan beberapa perpustakaan berkuasa yang membolehkan kami mengendalikan operasi pemampatan dan penyahmampatan fail dengan mudah. Artikel ini akan memperkenalkan pustaka pemampatan dan penyahmampatan fail yang biasa digunakan dalam Python dan memberikan contoh kod khusus.

  1. pustaka fail zip
    pustaka fail zip ialah perpustakaan terbina dalam Python untuk memproses fail ZIP, yang melaluinya kami boleh memampatkan dan menyahmampat fail ZIP.

Fail termampat:
Di bawah ialah contoh kod yang menunjukkan cara menggunakan perpustakaan fail zip untuk memampatkan folder.

import zipfile
import os

def zip_folder(folder_path, output_path):
    with zipfile.ZipFile(output_path, 'w', zipfile.ZIP_DEFLATED) as zipf:
        for root, dirs, files in os.walk(folder_path):
            for file in files:
                zipf.write(os.path.join(root, file), os.path.relpath(os.path.join(root, file), folder_path))

folder_path = '/path/to/folder'
output_path = '/path/to/output.zip'
zip_folder(folder_path, output_path)

Nyahzip fail:
Di bawah ialah contoh kod yang menunjukkan cara menggunakan perpustakaan fail zip untuk menyahzip fail ZIP.

import zipfile

def unzip_file(zip_path, output_path):
    with zipfile.ZipFile(zip_path, 'r') as zipf:
        zipf.extractall(output_path)

zip_path = '/path/to/zip.zip'
output_path = '/path/to/output_folder'
unzip_file(zip_path, output_path)
  1. tarfile library
    Pustaka tarfile ialah perpustakaan terbina dalam Python untuk memproses fail tar, yang melaluinya kami boleh memampatkan dan menyahmampat fail tar.

Fail mampat:
Di bawah ialah contoh kod yang menunjukkan cara menggunakan perpustakaan tarfile untuk memampatkan folder.

import tarfile
import os

def tar_folder(folder_path, output_path):
    with tarfile.open(output_path, 'w:gz') as tar:
        tar.add(folder_path, arcname=os.path.basename(folder_path))

folder_path = '/path/to/folder'
output_path = '/path/to/output.tar.gz'
tar_folder(folder_path, output_path)

Nyahzip fail:
Berikut ialah contoh kod yang menunjukkan cara menggunakan perpustakaan tarfile untuk menyahzip fail tar.

import tarfile

def untar_file(tar_path, output_path):
    with tarfile.open(tar_path, 'r:gz') as tar:
        tar.extractall(output_path)

tar_path = '/path/to/tar.tar.gz'
output_path = '/path/to/output_folder'
untar_file(tar_path, output_path)
  1. pustaka gzip
    Pustaka gzip ialah perpustakaan terbina dalam Python yang mengendalikan pemampatan dan penyahmampatan fail gzip.

Fail mampat:
Di bawah ialah contoh kod yang menunjukkan cara menggunakan perpustakaan gzip untuk memampatkan fail.

import gzip

def gzip_file(file_path, output_path):
    with open(file_path, 'rb') as f_in:
        with gzip.open(output_path, 'wb') as f_out:
            f_out.writelines(f_in)

file_path = '/path/to/file.txt'
output_path = '/path/to/output.txt.gz'
gzip_file(file_path, output_path)

Menyahmampat fail:
Di bawah ialah kod sampel yang menunjukkan cara menggunakan perpustakaan gzip untuk menyahmampat fail.

import gzip

def gunzip_file(gzip_path, output_path):
    with gzip.open(gzip_path, 'rb') as f_in:
        with open(output_path, 'wb') as f_out:
            f_out.writelines(f_in)

gzip_path = '/path/to/gzip.txt.gz'
output_path = '/path/to/output.txt'
gunzip_file(gzip_path, output_path)

Ringkasan:
Dengan menggunakan pustaka zipfile, tarfile dan gzip dalam Python, kami boleh mengendalikan operasi pemampatan dan penyahmampatan fail dengan mudah. Perpustakaan ini menyediakan antara muka yang mudah digunakan dan pilihan fungsi yang kaya untuk memenuhi pelbagai keperluan dalam kerja harian. Dalam proses menggunakan perpustakaan ini, kita boleh memilih kaedah yang sesuai secara fleksibel mengikut situasi khusus untuk mencapai tujuan memproses pemampatan dan penyahmampatan fail dengan cekap.

Atas ialah kandungan terperinci Bagaimana untuk mengendalikan pemampatan dan penyahmampatan fail dalam Python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn