Rumah > Artikel > pembangunan bahagian belakang > Menggunakan operasi skrip Python untuk melaksanakan pemampatan dan penyahmampatan fail pada platform Linux
Menggunakan skrip Python untuk memampatkan dan menyahmampat fail pada platform Linux ialah kaedah yang sangat mudah dan cekap. Dalam artikel ini, kami akan membincangkan cara menggunakan Python untuk menulis skrip untuk memampatkan dan menyahmampat fail, dan memberikan contoh kod khusus.
1. Mampatan fail
Mampatan fail adalah untuk membungkus dan memampatkan satu atau lebih fail ke dalam satu fail untuk mengurangkan ruang dan masa penghantaran fail. Dalam platform Linux, kita boleh menggunakan modul zipfile Python untuk melaksanakan pemampatan fail.
Berikut ialah contoh yang menunjukkan cara menggunakan skrip Python untuk memampatkan fail:
import zipfile import os def compress_files(source_dir, zip_file): with zipfile.ZipFile(zip_file, 'w') as zipf: for root, _, files in os.walk(source_dir): for file in files: file_path = os.path.join(root, file) zipf.write(file_path, os.path.relpath(file_path, source_dir)) print('文件压缩完成!') source_dir = '/path/to/source/dir' # 待压缩的文件夹路径 zip_file = '/path/to/zip/file.zip' # 压缩后的文件路径 compress_files(source_dir, zip_file)
Dalam contoh ini, kami mentakrifkan fungsi compress_files
, Fungsi ini menerima dua parameter: source_dir
dan zip_file
, yang masing-masing mewakili laluan folder untuk dimampatkan dan laluan fail dimampatkan. Dalam badan fungsi, kami menggunakan zipfile.ZipFile
untuk mencipta objek ZipFile, dan kemudian menggunakan os.walk
untuk melintasi semua fail dalam folder dan menulisnya ke yang dimampatkan tengah fail. compress_files
函数,该函数接收两个参数:source_dir
和zip_file
,分别代表待压缩的文件夹路径和压缩后的文件路径。在函数体内,我们使用zipfile.ZipFile
创建了一个ZipFile对象,然后使用os.walk
遍历文件夹中的所有文件,并将其写入到压缩文件中。
执行上述代码后,我们可以在指定的路径下找到一个名为file.zip
的压缩文件,里面包含了source_dir
文件夹中的所有文件。
二、文件解压缩
文件解压缩是将压缩文件还原为原始的文件,并恢复文件的完整目录结构。同样地,我们可以使用Python的zipfile模块来实现文件的解压缩。
下面是一个例子,演示如何使用Python脚本来解压缩文件:
import zipfile import os def extract_files(zip_file, dest_dir): with zipfile.ZipFile(zip_file, 'r') as zipf: zipf.extractall(dest_dir) print('文件解压缩完成!') zip_file = '/path/to/zip/file.zip' # 待解压缩的文件路径 dest_dir = '/path/to/destination/dir' # 解压缩后文件的存放路径 extract_files(zip_file, dest_dir)
在这个例子中,我们定义了一个extract_files
函数,该函数接收两个参数:zip_file
和dest_dir
,分别代表待解压缩的文件路径和解压缩后文件的存放路径。在函数体内,我们使用zipfile.ZipFile
创建了一个ZipFile对象,然后使用extractall
file.zip
dalam laluan yang ditentukan, yang mengandungi fail source_dir
semua fail dalam folder. 2. Penyahmampatan failPenyahmampatan fail adalah untuk memulihkan fail yang dimampatkan kepada fail asal dan memulihkan struktur direktori lengkap fail. Begitu juga, kita boleh menggunakan modul zipfile Python untuk menyahmampat fail. Berikut ialah contoh yang menunjukkan cara menggunakan skrip Python untuk menyahmampat fail: rrreee
Dalam contoh ini, kami mentakrifkan fungsiextract_files
, fungsi ini menerima dua parameter: zip_file
dan dest_dir
, yang masing-masing mewakili laluan fail yang akan dinyahmampat dan laluan storan fail yang dinyahmampat. Dalam badan fungsi, kami menggunakan zipfile.ZipFile
untuk mencipta objek ZipFile, dan kemudian menggunakan fungsi extractall
untuk mengekstrak kandungan fail termampat ke folder sasaran yang ditentukan. #🎜🎜##🎜🎜#Selepas melaksanakan kod di atas, kandungan fail yang dimampatkan akan dipulihkan ke folder sasaran dan struktur direktori asal akan dikekalkan. #🎜🎜##🎜🎜#3 Ringkasan#🎜🎜##🎜🎜#Menggunakan skrip Python untuk memampatkan dan menyahmampat fail ialah kaedah yang sangat mudah dan cekap di bawah platform Linux. Dengan menggunakan modul zipfile Python, kami boleh melaksanakan operasi pembungkusan, pemampatan dan penyahmampatan fail dengan mudah. #🎜🎜##🎜🎜# Saya harap contoh kod di atas dapat membantu anda dan memberi anda pemahaman yang lebih baik tentang cara menggunakan skrip Python untuk memampatkan dan menyahmampat fail pada platform Linux. Selamat menulis! #🎜🎜#Atas ialah kandungan terperinci Menggunakan operasi skrip Python untuk melaksanakan pemampatan dan penyahmampatan fail pada platform Linux. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!