1.shutil.make_archive() 实际上是调用了两个模块来实现压缩打包的功能。
zipfile和tarfile两个模块,shutil的两个封装的模块。
zip是压缩文件,文件内存会变小,tar是打包文件,文件内存不会变。
如下所示:
zipfile模块
# import zipfile # # z = zipfile.ZipFile(\'5_zip\',\'w\') #压缩后的文件名‘5_zip’ # # z.write(\'5\') # # z.close() # z = zipfile.ZipFile(\'5_zip\',\'r\') # # z.extractall() #解压压缩的文件 # # z.close()
tarfile模块
# import tarfile # # tar = tarfile.open(\'your.tar\',\'w\') #打包文件 # # tar.add(路径,arcname = 目录或文件名) #如果不加arcname,系统会帮你打包文件所在的所有目录,加了arcname系统只会打包这一个目录或文件。 # # tar.close() # # tar = tarfile.open(\'your.tar\',\'r\') #解压文件 # # tar.extractall() # # tar.close()