简明Python教程:gzip压缩和解压缩实践
发布时间:2023-12-11 06:52:01
在Python中,我们可以使用gzip模块来进行gzip压缩和解压缩操作。gzip模块提供了两个主要的函数:gzip.compress()和gzip.decompress()。下面是gzip压缩和解压缩的实践示例:
1. 压缩文件
import gzip
def compress_file(file_path):
# 打开原文件
with open(file_path, 'rb') as file:
data = file.read()
# 创建压缩文件名
compressed_file_path = file_path + '.gz'
# 打开压缩文件
with gzip.open(compressed_file_path, 'wb') as compressed_file:
# 压缩并写入数据
compressed_file.write(data)
print(f'文件已成功压缩为:{compressed_file_path}')
在上面的示例中,我们首先使用open函数读取原文件的内容。然后,我们通过在原文件名后面添加'.gz'来创建压缩文件名。接下来,我们使用gzip.open函数创建一个用于写入压缩数据的文件对象,并将数据写入该文件中。最后,我们打印出压缩文件的路径。
2. 解压文件
import gzip
def decompress_file(file_path):
# 创建解压后的文件名
decompressed_file_path = file_path[:-3]
# 打开压缩文件
with gzip.open(file_path, 'rb') as compressed_file:
# 解压数据
data = compressed_file.read()
# 写入解压后的文件
with open(decompressed_file_path, 'wb') as decompressed_file:
decompressed_file.write(data)
print(f'文件已成功解压为:{decompressed_file_path}')
在上面的示例中,我们首先使用压缩文件的路径获取解压后的文件名。然后,我们使用gzip.open函数打开压缩文件,并读取压缩数据。接下来,我们使用open函数创建一个用于写入解压数据的文件对象,并将数据写入该文件中。最后,我们打印出解压后文件的路径。
以上就是gzip压缩和解压缩的实践示例。在实际应用中,我们可以使用这些函数来对文件进行gzip压缩和解压缩,以减小文件大小和提高传输效率。
