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\n', 'xiaodeng\n', '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=''
f.setpassword(pwd) #9)getinfo方法返回一个ZipInfo对象
f=zipfile.ZipFile('2.zip','r')
print f.filename #获取文件名字
gzip和zipfile模块的更多相关文章
- python笔记之ZipFile模块
python笔记之ZipFile模块 zipfile模块用来做zip格式编码的压缩和解压缩的,zipfile里有两个非常重要的class, 分别是ZipFile和ZipInfo, 在绝大多数的情况下, ...
- zipfile模块
在python中操作zip文件, 基本上都是使用zipfile模块,他可以创建.解压文件,获取zip文件的元数据信息. 我们想要操作一个zip文件,第一步就是初始化ZipFile实例. 1.打开tes ...
- Python之路(第十八篇)shutil 模块、zipfile模块、configparser模块
一.shutil 模块 1.shutil.copyfileobj(fsrc, fdst[, length]) 将文件内容拷贝到另一个文件中,需要打开文件 import shutil shutil.co ...
- Python ZipFile模块详解(转)
Python zipfile模块用来做zip格式编码的压缩和解压缩的,zipfile里有两个非常重要的class, 分别是ZipFile和ZipInfo, 在绝大多数的情况下,我们只需要使用这两个cl ...
- Python标准库学习之zipfile模块
ZipFile模块里有两个非常重要的class, 分别是 ZipFile和ZipInfo. ZipFile是主要的类,用来创建和读取zip文件,而ZipInfo是存储的zip文件的每个文件的信息的. ...
- python3中zipfile模块的常用方法
一.zipfile模块的简述 zipfile是python里用来做zip格式编码的压缩和解压缩的,由于是很常见的zip格式,所以这个模块使用频率也是比较高的, 在这里对zipfile的使用方法做一些记 ...
- Python连载13-shutile模块(续)和zipfile模块
一.shutil模块(续) 1.函数:upack_archive() (1)用法:解包操作 (2)格式:shutil.unpack_archive("归档文件地址“,”解包之后的地址“) ( ...
- python学习笔记之zipfile模块
为什么学习: 在做自动化测试平台的apk上传功能部分时候,涉及到apk上传后提取apk的icon图标,通过aapt解析apk,获取对应icon在apk中的地址,通过python的zipfile模块来解 ...
- python中zipfile模块实例化解析
文章内容由--“脚本之家“--提供,在此感谢脚本之家的贡献,该网站网址为:https://www.jb51.net/ 简介: zipfile是python里用来做zip格式编码的压缩和解压缩的,由于是 ...
随机推荐
- 取消SVN版本号控制的bash脚本
原理非常easy,递归删除当前文件夹下全部的 .svn 文件. 把 .svn 换成 .git 就可以用于删除 git 控制
- JAVA JDOM解析XML 带CDATA数据
import java.io.StringReader;import java.util.*; import org.jdom.Document;import org.jdom.Element;imp ...
- use of undeclared identifier 'xxxxxxx方法名'
在*.m文件中,编写一个方法,出现了 use of undeclared identifier 'xxxx方法名'. 遇到这种情况: 首先要看,*.h 文件是否定义了该方法. 其次,要检查一下,方 ...
- Spring4.0+quartz2.2.1+memcahce多台nginx实现均衡
1.每台nginx都有公网地址,在域名处设置同个域名多个指向,最简单实现轮洵.但故障切负会慢一点.2.一台公网nginx通过upstream功能,轮洵.ip.url多方式分发到内网多台nginx.但公 ...
- Spring Quartz 持久化解决方案
Quartz是实现了序列化接口的,包括接口,所以可以使用标准方式序列化到数据库. 而Spring2.5.6在集成Quartz时却未能考虑持久化问题. Spring对JobDetail进行了封装,却未实 ...
- CASpringAnimation的使用
CASpringAnimation的使用 效果 源码 https://github.com/YouXianMing/Animations // // CASpringAnimationControll ...
- 软件系统分析师与架构师技能大PK(您具备了哪些呢?)
博客转处:http://blog.csdn.net/china_video_expert/article/details/38335613 软件系统分析师与架构师在职责与技能方面没有明显的界线,你中有 ...
- 基尼系数(Gini coefficient),洛伦茨系数
20世纪初意大利经济学家基尼,于1922年提出的定量测定收入分配差异程度的指标.它是根据洛伦茨曲线找出了判断分配平等程度的指标(如下图). 设实际收入分配曲线和收入分配绝对平等曲线之间的面积为A,实际 ...
- OBjective-C:atomic和nonatomic的区别
atomic和nonatomic的区别: atomic: 设置成员变量的@property属性时,默认为atomic,提供多线程安全.因为多线程的缘故,所有的对象在操作成员变量时都是同步的,因此,为了 ...
- typedef的用法和相关问题
用了C和C++这么久,今天才仔细研究了下typedef的用法,真的是惭愧啊,不过基础都是不断巩固的啊. typedef 在计算机编程语言中用来为复杂的声明定义简单的别名,与宏定义有些差异.它本身是一种 ...