#coding=utf-8
#甄码农python代码
#使用zipfile做目录压缩,解压缩功能
import os,os.path
import zipfile
def zip_dir(dirname,zipfilename):
    filelist = []
    if os.path.isfile(dirname):
        filelist.append(dirname)
    else :
        for root, dirs, files in os.walk(dirname):
            for name in files:
                filelist.append(os.path.join(root, name))
         
    zf = zipfile.ZipFile(zipfilename, "w", zipfile.zlib.DEFLATED)
    for tar in filelist:
        arcname = tar[len(dirname):]
        #print arcname
        zf.write(tar,arcname)
    zf.close()
def unzip_file(zipfilename, unziptodir):
    if not os.path.exists(unziptodir): os.mkdir(unziptodir, 0777)
    zfobj = zipfile.ZipFile(zipfilename)
    for name in zfobj.namelist():
        name = name.replace('\\','/')
        
        if name.endswith('/'):
            os.mkdir(os.path.join(unziptodir, name))
        else:           
            ext_filename = os.path.join(unziptodir, name)
            ext_dir= os.path.dirname(ext_filename)
            if not os.path.exists(ext_dir) : os.mkdir(ext_dir,0777)
            outfile = open(ext_filename, 'wb')
            outfile.write(zfobj.read(name))
            outfile.close()
if __name__ == '__main__':
    zip_dir(r'E:/python/learning',r'E:/python/learning/zip.zip')
    unzip_file(r'E:/python/learning/zip.zip',r'E:/python/learning2')

Python压缩文件夹/解压缩zip文件相关推荐

  1. Java实现压缩文件与解压缩zip文件

    在日常的使用中经常会使用到像WinRAR或WinZIP这样的压缩文件,通过这些软件可以把一个很大的文件进行压缩以方便传输. 在JAVA中 为了减少传输时的数据量也提供了专门的压缩流,可以将文件或文件夹 ...

  2. java zip 文件夹_Java Zip文件文件夹示例

    java zip 文件夹 Today we will look into java zip file example. We will also compress a folder and creat ...

  3. Python 技术篇-用zipfile库进行zip文件的压缩与解压实例演示,python压缩本地文件夹为zip文件并保留目录结构

    首先给大家演示下 zip 文件的解压方法. import zipfiledef zip_extract_to(path_zip, path_aim):'''作用:解压压缩包参数一:压缩包位置参数二:解 ...

  4. php将文件夹打包zip文件,php将文件夹打包成zip文件

    php将文件夹打包成zip文件:function addFileToZip($path,$zip){ $handler=opendir($path); //打开当前文件夹由$path指定. while ...

  5. java删除文件夹多余ZIP文件

    //删除临时zip文件File dir = new File(path);if (dir.getName().endsWith(".zip")) { // zip文件 判断 是否存 ...

  6. 关于minizip-ng无法解压unix下压缩的带有文件夹的zip文件

    1. 什么是minizip-ng minizip-ng是继zlib的contribute下的minizip重构而来的.具体详情参考 https://github.com/zlib-ng/minizip ...

  7. python读取文件并且排序_python 顺序读取文件夹下面的文件(自定义排序方式)...

    我们在读取文件夹下面的文件时,有时是希望能够按照相应的顺序来读取,但是 file_lists=os.listdir()返回的文件名不一定是顺序的,也就是说结果是不固定的.就比如读取下面这些文件,希望能 ...

  8. python压缩教程_如何使用Python压缩/解压缩zip文件?(代码示例)

    在批量交换大文件和多个文件时,使用zip文件是非常方便的.下面本篇文章就来带大家认识解一下zip文件,介绍使用Python压缩或解压缩zip文件的方法,希望对大家有所帮助.[视频教程推荐:Python ...

  9. vb.net 解压缩(文件/文件夹解压缩,zip文件浏览,单文件解压,分卷压缩)

    vb.net 解压缩(文件/文件夹解压缩,zip文件浏览,单文件解压,分卷压缩) DLL:Ionic.Zip.dll 说明: 1.解压/压缩 显示加密进度及总进度. 2.zip文件打开,浏览内部文件. ...

最新文章

  1. python修改电脑名称_修改计算机名称
  2. consumer和partition的数量建议
  3. python 蓝牙模块pybluz安装
  4. mysql 5.5 client 字符集_rhel4 mysql5.5 字符集_character set
  5. mybatis ------ 懒加载(八)
  6. Spring RestTemplate 访问https站点
  7. MPLS连通性测试原理
  8. 100个C语言经典小程序和C语言编写的小游戏
  9. docker安装gamit_Ubuntu下安装gamit
  10. Chrome浏览器语音自动播放功能
  11. 数据防泄密方案与需求匹配程度分析
  12. python需要学哪些基础知识_零基础学Python应该学习哪些入门知识
  13. 初学盲打,免费,免安装,高颜值的在线打字练习网站
  14. jetson xavier nx安装ROS Melodic
  15. 镭速-文件传输数据实时对比!一秒将传输速度提升100倍
  16. [翻译] [LaTeX] 分式和二项式 - Fractions and Binomials
  17. 树莓派4B安装Ubuntu Server20.04(18.04)连接wifi(对于ubuntu server 99%适用)
  18. 网络空间安全要学c语言吗,2019年硕士研究生入学考试网络空间安全学院专业课考研大纲...
  19. 初中微型计算机基础评课,初中语文组评课稿---《台阶》
  20. QEMU 上模拟 KZM 开发板

热门文章

  1. 如何将access数据库导入到sql2005数据库中
  2. Git学习系列(七)Bug和Feature分支管理详解
  3. iOS汉字转拼音,日韩文字转拼音
  4. Hessian Spring相关使用的简单例子
  5. Android 实现静默安装
  6. Postman 如何处理上一个接口返回值作为下一个接口入参?
  7. topcoder srm 525 div1
  8. 编写高质量JavaScript代码绳之以法(The Essentials of Writing High Quality JavaScript)翻译...
  9. 大唐电信[600198]股票
  10. localStorage、cookie