zoukankan      html  css  js  c++  java
  • python zipfile使用

    the Python challenge中第6关使用到zipfile模块,于是记录下zipfile的使用

    zip日常使用只要是压缩跟解压操作,于是从这里入手

    1、压缩

    f=zipfile.ZipFile(file, mode="r", compression=ZIP_STORED, allowZip64=False)

    创建一个zip文件对象,压缩是需要把mode改为‘w’,这个是源码中的注释Open the ZIP file with mode read "r", write "w" or append "a",a为追加压缩,不会清空原来的zip

    f.write(filename)

    将文件写入zip文件中,即将文件压缩

    f.close()

    将zip文件对象关闭,与open一样可以使用上下文with as

    import zipfile
    
    with zipfile.ZipFile('test.zip', mode='w') as zipf:
       zipf.write('channel.zip')
       zipf.write('zip_test.py')
    
    zipf = zipfile.ZipFile('test.zip')
    print zipf.namelist()

    2、解压

    f.extract(directory)和f.exractall(directory)

    import zipfile
    
    
    zipf = zipfile.ZipFile('test.zip')
    
    zipf.extractall('channel1')#将所有文件解压到channel1目录下

    高级应用 
    1 zipfile.is_zipfile(filename) 
    判断一个文件是不是压缩文件 
    2 ZipFile.namelist() 
    返回文件列表 
    3 ZipFile.open(name[, mode[, password]]) 
    打开压缩文档中的某个文件

    if zipfile.is_zipfile('test.zip'): #is_zipfile() 判断是否似zip文件
       f = zipfile.ZipFile('test.zip')
       files = f.namelist() #namelist() 返回zip压缩包中的所有文件
       print 'files:', files
       mess = f.open('channel/readme.txt') #打开zip压缩包中的某个文件,可读可写
       print 'mess:', mess.read()
       f.close()
  • 相关阅读:
    asp.net HC框架
    Jenkins之构建触发器配置(转载)
    Mac系统
    Macaca命令行
    Appnium学习日记四(Calculator示例)
    Appnium学习日记三(安装Android模拟器)
    Appnium学习日记二(安装Android开发环境)
    Appnium学习日记一(下载安装Appnium)
    Jmeter的安装
    WCF返回JSON的详细配置
  • 原文地址:https://www.cnblogs.com/alummox/p/7414279.html
Copyright © 2011-2022 走看看