码迷,mamicode.com
首页 > 编程语言 > 详细

轻松python之文件专题-关于zip文件的一些操作

时间:2015-09-02 18:57:39      阅读:130      评论:0      收藏:0      [点我收藏+]

标签:python

场景:

zip文件的操作,包括增删改查

1.zip的创建,并在zip包里面创建一个文件

>>> import zipfile
>>> handler=open('temp_zip.zip','w')
>>> handler.close ()
>>> z=zipfile.ZipFile ('c:/Python34/temp_zip.zip','w')
>>> z.writestr('hello.py','def f():return "hello word from "+__file__\n')
>>> z.close ()


2.把文件树给打包到zip里面

>>> import zipfile
>>> z=zipfile.ZipFile('temp_zip.zip','w')
>>> for dirpath,dirnames,filenames in os.walk('c:/Python34/TestDict',True):
	for item in filenames:
		z.write (os.path .join (dirpath,item))
		print (os.path .join (dirpath,item))

		
c:/Python34/TestDict\input_file.txt
c:/Python34/TestDict\LICENSE.txt
c:/Python34/TestDict\NEWS.txt
c:/Python34/TestDict\output_file.txt
c:/Python34/TestDict\Test1\LICENSE - 副本.txt
c:/Python34/TestDict\Test2\output_file - 副本.txt
>>> z.namelist ()
['Python34/TestDict/input_file.txt', 'Python34/TestDict/LICENSE.txt', 'Python34/TestDict/NEWS.txt', 'Python34/TestDict/output_file.txt', 'Python34/TestDict/Test1/LICENSE - 副本.txt', 'Python34/TestDict/Test2/output_file - 副本.txt']
>>> z.close ()
>>> 
我们预设了一个文件夹以及若干文件,然后把一个文件夹树打包了进去zip里面,最后我们输出这个包里面的文件名

通过namelist递归输出了所有文件的名称

3..清空zip包

>>> z=zipfile.ZipFile('temp_zip.zip','w')
>>> z.close ()

4.解压

>>> import zipfile
>>> z=zipfile.ZipFile('temp_zip.zip','a')
>>> z.extractall()
>>> z.close ()
上面的方法是解压到python的根目录,如果想解压到其他目录,可以在extractall后面加上参数地址


就说到这里,谢谢大家

------------------------------------------------------------------

点击跳转零基础学python-目录





版权声明:本文为博主原创文章,未经博主允许不得转载。

轻松python之文件专题-关于zip文件的一些操作

标签:python

原文地址:http://blog.csdn.net/raylee2007/article/details/48179061

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!