在Python中,我们可以使用以下模块进行文件压缩和解压缩:
1. zipfile:
- zipfile模块可以处理ZIP压缩文件。
- 我们可以通过zipfile压缩和解压zip文件。
例如:
import zipfile
# 压缩
with zipfile.ZipFile('压缩文件.zip', 'w') as f:
f.write('文件1.txt')
f.write('文件2.txt')
# 解压
with zipfile.ZipFile('压缩文件.zip', 'r') as f:
f.extractall() # 解压全部文件
f.extract('文件1.txt') # 仅解压选定文件
2. gzip:
- gzip模块可以压缩和解压gzip文件。
- gzip文件以.gz为扩展名。
例如:
import gzip
# 压缩
with open('文件.txt', 'rb') as f_in, gzip.open('文件.txt.gz', 'wb') as f_out:
f_out.writelines(f_in)
# 解压
with gzip.open('文件.txt.gz', 'rb') as f_in, open('文件.txt', 'wb') as f_out:
f_out.writelines(f_in)
3. tarfile:
- tarfile模块可以处理tar包文件。
- tar包可以包含多个文件,并且支持压缩,格式为.tar.gz或.tar.bz2。
例如:
import tarfile
# 压缩
with tarfile.open('压缩文件.tar.gz', 'w:gz') as tar:
tar.add('文件1.txt')
tar.add('文件2.txt')
# 解压
with tarfile.open('压缩文件.tar.gz', 'r:gz') as tar:
tar.extractall() # 解压全部文件
tar.extract('文件1.txt') # 解压选定文件
这些模块可以帮助我们对文件进行压缩和打包,从而节省存储空间。熟练掌握各种压缩格式和算法,可以让我们更加高效地处理和传输文件。