文件压缩:使用Python函数压缩和解压文件,以便在传输或备份期间减少文件大小
发布时间:2023-07-02 11:36:18
文件压缩是一种常见的方法,可以通过减少文件大小来提高传输效率或节省存储空间。在Python中,我们可以使用gzip模块来实现文件的压缩和解压缩。
压缩文件:
首先,我们需要导入gzip模块,并打开要进行压缩的文件。可以使用open函数来打开文件,并使用rb模式来以二进制方式读取文件内容。
import gzip
def compress_file(input_file, output_file):
with open(input_file, 'rb') as f_in:
with gzip.open(output_file, 'wb') as f_out:
f_out.writelines(f_in)
在上面的代码中,我们使用两个嵌套的with语句来打开输入和输出文件。通过使用二进制模式打开文件,我们可以确保正确读取和写入文件内容。然后,我们将输入文件的内容逐行写入输出文件。
解压文件:
与压缩文件类似,我们同样需要导入gzip模块,并打开要进行解压缩的文件。可以使用open函数来打开文件,并使用wb模式来以二进制方式写入文件内容。
import gzip
def decompress_file(input_file, output_file):
with gzip.open(input_file, 'rb') as f_in:
with open(output_file, 'wb') as f_out:
f_out.write(f_in.read())
在上面的代码中,我们同样使用了两个嵌套的with语句来打开输入和输出文件。通过使用二进制模式打开文件,我们可以确保正确读取和写入文件内容。然后,我们将输入文件的内容读取,并将其写入到输出文件中。
使用示例:
compress_file('input.txt', 'compressed_file.gz')
decompress_file('compressed_file.gz', 'output.txt')
在上面的示例中,我们将input.txt文件进行压缩,并将压缩后的结果保存为compressed_file.gz。然后,我们将压缩文件进行解压缩,并将解压缩后的结果保存为output.txt。
总结:
通过使用gzip模块,我们可以方便地压缩和解压缩文件。这能够有效地减少文件大小,提高传输效率或节省存储空间。无论是在传输文件还是进行文件备份时,文件压缩都是一个非常实用的技术。
