zoukankan      html  css  js  c++  java
  • gzip和zipfile模块

    # -*- coding: utf-8 -*-
    #python 27
    #xiaodeng
    #gzip和zipfile模块
    #http://www.open-open.com/lib/view/open1398334415312.html
    
    
    
    import gzip
    #1、创建gzip文件
    content='I am is a gzip file'  #写入gzip中的txt文件中的内容。
    f=gzip.open('filename.txt.gz','w')#也可以写成filename.gz,但是没有明确指出压缩包中文件的格式
    f.write(content)
    f.close()
    
    
    #2、解压gzip文件示例
    import gzip
    f=gzip.open('filename.txt.gz','r')
    content=f.read()
    print content
    f.close()
    
    
    #3、gzip压缩现有文件
    import gzip
    f=open('out.txt','r')
    f_gzip=gzip.open('filegzip.txt.gz','w')
    f_gzip.writelines(f)#一行一行的写入
    f_gzip.close()
    f.close()
    
    
    #4、GzipFile,打开一个压缩文件对象。
    g=gzip.GzipFile(r'filegzip.txt.gz')
    print g.read()
    #将指针回到第一个位置
    g.seek(0)
    print g.readlines()#['xiaodeng
    ', 'xiaodeng
    ', 'xiaodeng']
    
    
    
    #5、压缩多个文件为zip/gz文件
    import zipfile
    f=zipfile.ZipFile('result.gz','w')#result.gz或result.zip均可
    #写入
    f.write('1.txt')
    f.write('2.txt')
    f.write('3.txt')
    f.close()
    
    
    
    #6、zipfile的方法
    
    #1)判断一个文件是否为压缩文件?
    print zipfile.is_zipfile('result.gz')#True
    
    #2)返回文件列表
    f=zipfile.ZipFile('result.gz','r')
    print f.namelist()#['1.txt', '2.txt', '3.txt']
    
    
    #3)返回ZipInfo对象,只不过一个返回的是列表
    f=zipfile.ZipFile('result.gz','r')#  f:压缩包对象
    ZipInfo= f.infolist()
    print ZipInfo
    #[<zipfile.ZipInfo object at 0x01BDEFA0>, <zipfile.ZipInfo object at 0x01C7C030>, <zipfile.ZipInfo object at 0x01C7C098>]
    
    #4)遍历压缩包中的每个文件
    for files in f.namelist():
        print files
        '''
        1.txt
        2.txt
        3.txt
        '''
    #5)解压全部文件到指定目录 r'c:\',两个斜杠,有一个为转义符
    #f.extractall(r'c:\')
    
    
    #6)解压指定文件名的文件到指定目录 r'c:\',两个斜杠,有一个为转义符
    f.extract('1.txt',r'c:\')
    
    
    #7)将zip文档的内部信息打印到控制台上。
    f.printdir()
    '''
    File Name                                             Modified             Size
    1.txt                                          2015-11-03 12:25:16           28
    2.txt                                          2015-11-03 12:25:16           28
    3.txt                                          2015-11-03 12:25:16           28
    '''
    
    
    #8)设置zip文档的密码,经测试没效果??。。。
    pwd='222222'
    f.setpassword(pwd)
    
    
    #9)getinfo方法返回一个ZipInfo对象
    f=zipfile.ZipFile('2.zip','r')
    print f.filename #获取文件名字
  • 相关阅读:
    GRASS——一个开源的遥感软件
    RSD和GEE的区别
    MIKE 11 GIS是什么?
    使用JavaScript Function.prototype进行代码重构的一些例子
    如何使用Chrome扩展应用postman发送SAP UI5 batch操作
    如何操作SAP UI5应用Footer区域工具栏按钮的背景颜色
    使用VisualVM进行Java应用的性能测量
    如何找到SAP UI5控件ID生成的准确时间点和代码位置
    SAP UI5应用里类型为Edm.DateTime的日期控件设计原理
    SAP UI5应用如果遇到数据绑定问题时,应该如何自己定位问题?
  • 原文地址:https://www.cnblogs.com/dengyg200891/p/4932827.html
Copyright © 2011-2022 走看看