zipfile和tarfile的简单使用方法


zipfile模块用来做zip格式编码的压缩和解压缩的,zipfile里有两个非常重要的class, 分别是ZipFile和ZipInfo, 在绝大多数的情况下,我们只需要使用这两个class就可以了。ZipFile是主要的类,用来创建和读取zip文件而ZipInfo是存储的zip文件的每个文件的信息的

zipfile的用法

压缩:

>>> import zipfile
>>> z=zipfile.ZipFile("laxi.zip","w")
>>> z.write("a.log")

>>> z.write("f1.log")

>>> z.write("f2.log")
>>> z.close()

解缩:

>>> z=zipfile.ZipFile("laxi.zip","r")
>>> z.extractall()
>>> z.close()

 解压到指定的文件夹中,如果文件夹不存在,则新建

>>> exampleZip=zipfile.ZipFile("a.zip")
>>> exampleZip.extractall("/home/ubuntu/Test")
>>> exampleZip.close()

>>> import zipfile
>>> z=zipfile.ZipFile("a.zip",'r')

>>> for i in z.infolist():
... print(i.filename,i.file_size, i.header_offset)

filename:文件名称

file_size:文件大小

header_offset:文件数据在压缩包中的偏移

 

>>> z=zipfile.ZipFile("a.zip")
>>> z.extract("a.java")  -------------------------->查看压缩包中指定文件所在的绝对路径 
'/home/ubuntu/test/a.java'


 

tarfile的用法

压缩:

>>> import tarfile
>>> tar=tarfile.open("your.tar","w")
>>> tar.add("/home/gerrit/python_script/f1.log",arcname="f1.log")
>>> tar.add("/home/gerrit/python_script/f2.log",arcname="f2.log")
>>> tar.close()

解压:

>>> import tarfile
>>> tar=tarfile.open("your.tar","r")
>>> tar.extractall()
>>> tar.close()

 


 从上面的案例可以看出:zipfile和tarfile的解压方法都是调用的extractall()方法,但是zipfile的压缩是彩用write()方法将文件写入到压缩包中,tarfile的压缩是彩用add()方法将文件添加到压缩包中,这样看zipfile好像还比tarfile简单一点,你觉得呢!


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM