python 处理zip文件 解压zip 压缩zip文件和压缩目录

 自己需要 就写了两个函数 。

import zipfile
#解压zip文件
def unzip(zip_path=None,file_path=None):
    if zip_path is None or file_path is None:
        return False
    if os.path.exists(zip_path):
        zip_file = zipfile.ZipFile(zip_path)
        zip_file.extractall(file_path)
        zip_file.close()
#压缩文件
def zip(file_path=None,zip_path=None):
    zip_path_type = 0
    if file_path is None or zip_path is None:
        return False
    if os.path.isdir(file_path):
        zip_path_type = 1
    elif os.path.isfile(file_path):
        zip_path_type = 2
    else:
        return False
    zip_file = zipfile.ZipFile(zip_path,‘w’,zipfile.ZIP_DEFLATED)
    if zip_path_type == 2:
        zip_file.write(file_path)
    if zip_path_type == 1:
        for fpathe,dirs,fs in os.walk(file_path):
            for f in fs:
                tmp_file_path = os.path.join(fpathe,f)
                zip_file.write(tmp_file_path)
    zip_file.close()
#使用方法
unzip(‘需要解压的zip文件路径’,'解压到的目录’) #解压模板
zip(‘需要zip压缩的文件或目录’,'压缩到zip的文件路径’) #重新打包
 
#demo
unzip(‘/home/wwwroot/test.zip’,'/home/wwwroot/test’)
zip(‘/home/wwwroot/test’,'/home/wwwroot/test.zip’)
 

 

没有评论 to “python 处理zip文件 解压zip 压缩zip文件和压缩目录”

留下评论:

昵称(必须):
邮箱地址 (不会被公开) (必须):
站点
评论 (必须)
XHTML: 您可以使用这些标记: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>