python压缩及解压缩
一、zipfile实现压缩及解压:
1.Python压缩ZIP文件:
import zipfile
f = zipfile.ZipFile(target, 'w', zipfile.ZIP_DEFLATED)
f.write(filename, file_url)
f.close()
其中target:是压缩后要保存的路径,可以是: 'C:\\temp\\' 或'./test'
ZIP_DEFLATED:表示压缩,
ZIP_STORE:表示只打包,不压缩。(这个Linux中的gz跟tar格式有点类似)
write方法:
如果只有一个参数filename的话,表示把你filename所带的路径全部压缩到zip文件中。
如果带两个参数,表示把filename路径中的那个file压缩一下并且存放到file_url中,中间没有增加任何的文件夹。
如果要压缩很多的文件,循环的write每个文件就ok了
最后close掉。
2.Python解压ZIP文件:
f = zipfile.ZipFile(tatgert,'r') for file in f.namelist(): #f.namelist()返回列表,列表中的元素为压缩文件中的每个文件 f.extract(file,"temp/")
target是压缩文件的路径
循环访问该压缩文件中的文件,并且一个一个file的解压到对应的"temp\"文件夹中
二、gzip实现压缩及解压:
1.Python压缩ZIP文件:
gzip块主要支持打开对应格式的压缩文件,并可以完成对压缩文件的读出和写入操作。压缩文件被打开后,可以使用文件对象一样的方法,如read、readline、readlines、write、writelines等。
import gzip
f_src = open("data.txt", "rb") #打开文件
f_ztar= gzip.open("data.txt.gz", "wb")#创建压缩文件对象
f_tar.writelines(f_in)
f_tar.close()
f_src.close()
2.Python解压ZIP文件:
import gzip f = gzip.open("data.txt.gz", 'rb') #打开压缩文件对象 f_out=open("data.txt","w") #打开解压后内容保存的文件 file_content = f.read() #读取解压后文件内容 f_out.write(file_content.decode("utf-8")) #写入新文件当中 print(file_content) #打印读取内容 f.close() f_out.close()