• 如何通过python代码解压zip包


     转载至https://www.cnblogs.com/flyhigh1860/p/3884842.html

    很多人在Google上不停的找合适自己的压缩,殊不知Py的压缩很不错。可以试试。当然C#,Java的压缩也有第三方的类。Py有很多美名:数学理论强大,数据结构高级等等,关于压缩算法当然用Py更加简单易用,达到目的才是最重要的。

    Python压缩ZIP文件:

    import zipfile
    f = zipfile.ZipFile(target,'w',zipfile.ZIP_DEFLATED)
    f.write(filename,file_url)
    f.close()

    其中target:是压缩后要保存的路径,可以是: 'C:\temp\'
    ZIP_DEFLATED:表示压缩,还有一个参数:ZIP_STORE:表示只打包,不压缩。这个Linux中的gz跟tar格式有点类似.
    write方法如果只有一个参数filename的话,表示把你filename所带的路径全部压缩到zip文件中。如果带两个参数,表示把filename路径中的那个file压缩一下并且存放到file_url中,中间没有增加任何的文件夹。
    如果要压缩很多的文件,循环的write就ok了
    最后close掉。
    Python解压ZIP文件:

    f = zipfile.ZipFile("zipfilePath",'r')
    for file in f.namelist():
    f.extract(file,"temp/")

    zipfilePath是压缩文件的路径
    循环访问该压缩文件中的文件,并且一个一个file的解压到对应的"temp"文件夹中
    --------------------------------------------------------------------------------------------------------------
    为什么我会用Python来进行解压缩呢,首先对于一个技术的取向,要看技术的擅长处,很显然如果你想用Python架构一个大型的Web,有点不可取,有人会跟我争,谁说的呀,Django不是很好的架构嘛,那Django是你写出来的吗?你的架构思想在哪里?所以大部分Web还是用Java或者C#架构,这仅仅是很初步的语言层面,上升到扩展、效率、逻辑等等就很多了。
    为什么我喜欢Python,说一个事情。每当我在以前的工作中,不断的重复很多逻辑,开发流程的时候,Python总是带给我惊喜。比如解压缩。如果是Java跟C#,我会毫不犹豫的去Google一下开源类,然后下载下来,然后编译,然后引用、导入,再找找使用指南……
    不错,这是一条路,很好。只要解决问题就好。
    但是在生活层面上,总是缺少一点,没有情调,没有任何触动心灵的颤动。
    用Python吧!Python肯定有解压缩,没有不可能的,只是你没有想到,我不信一个发展了10年的语言还有什么缺憾,对照C++ SLT也完善的差不多了!想到的都有!
    标准库中已经引入了zipfile就ok了
    压缩跟解压都3行代码,如果你极端一点1行也能搞定。
    希望你也喜欢上Py

    解压当前目录下的zip文件到当前目录,并删除原有的zip文件

    import zipfile
    import os
    
    file_list = os.listdir(r'.')
    
    for file_name in file_list:
        if os.path.splitext(file_name)[1] == '.zip':
            print file_name
    
            file_zip = zipfile.ZipFile(file_name, 'r')
            for file in file_zip.namelist():
                file_zip.extract(file, r'.')
            file_zip.close()
            os.remove(file_name)    
  • 相关阅读:
    Android OCR 之 tesseract
    抛砖引玉 之 谁动了我的流量(0权限上传数据)
    退伍一年了
    android 通过 Hessian 与 j2ee 服务端交互
    Arduino 入手
    抛砖引玉 之 谁动了我的隐私(android用户隐私窥探)
    如何关注那些有价值的微博
    关于培训和外包20111027
    ASP.NET实现Cookie功能的三个基本操作(写入,读取,删除)
    提高你开发效率的十五个Visual Studio 2010使用技巧
  • 原文地址:https://www.cnblogs.com/aaronthon/p/9368487.html
Copyright © 2020-2023  润新知