需要用到两个库,zipfile、tarfile
- import zipfile
- import tarfile
-
- def compress(paths,files):
- """ 压缩 支持zip、tar
- paths:压缩文件路径(D:\\a.zip),files:要压缩的文件列表[a.txt,b.txt] """
- if paths.endswith('.zip'):
- z = zipfile.ZipFile(paths, 'w', zipfile.ZIP_STORED)
- for i in files:
- z.write(i)
- z.close()
- elif paths.endswith('.tar'):
- tar = tarfile.open(paths, 'w')
- for i in files:
- tar.add(i)
- tar.close()
-
-
- def uncompress(paths):
- """ 解压 支持zip、tar
- paths:压缩文件路径(D:\\a.zip) """
- if paths.endswith('.zip'):
- z = zipfile.ZipFile(paths, 'r')
- z.extractall(path=".")
- z.close()
- elif paths.endswith('.tar'):
- tar = tarfile.open(paths, 'r')
- tar.extractall(path=".")
- tar.close()
-
注:此代码只是个人根据当时的环境满足了当时的需求,记录下来用做后续参考!如有问题,请检查软硬件环境是否一致,由于时间精力有限,大部分未做详细环境描述。