當前位置:首頁 » 文件管理 » python解壓縮

python解壓縮

發布時間: 2022-01-09 16:03:19

python怎樣壓縮解壓縮ZIP文件

1、python使用zipfile模塊壓縮和解壓ZIP文件
2、讀取zip文件
首先,通過zipfile模塊打開指定zip文件,如:
zpfd
=
zipfile.ZipFile(path,
mode='r')
對於zipfile,其標志與open所用的打開文件標志有所不同,不能識別
'rb'。
然後,讀取zip文件中的內容,zipfile對象提供一個read(name)的方法,name為zip文件中的一個文件入口,執行完成之後,將返回讀出的內容,如:
for
filename
in
zpfd.namelist():
tmpcont
=
zpfd.read(filename)
print
'len(tmpcont)',
'tmpcont'
需要注意的是,讀取zip文件時,只能讀取內容!

Ⅱ 如何通過Python壓縮解壓縮zip文件

解壓縮

importzipfile
importos
defun_zip(file_name):
"""unzipzipfile"""
zip_file=zipfile.ZipFile(file_name)
ifos.path.isdir(file_name+"_files"):
pass
else:
os.mkdir(file_name+"_files")
fornamesinzip_file.namelist():
zip_file.extract(names,file_name+"_files/")
zip_file.close()

打包

zipfile.ZipFile('xxx.zip','a/w/x').write('xxx.txt')

'w'以截斷並寫入新文件'a'以附加到現有文件,或'x'以專門創建和寫入新文件。

Ⅲ python怎麼解壓壓縮的字元串數據

import StringIO
import gzip
compresseddata = gzip方式壓縮的字元串(html)
compressedstream = StringIO.StringIO(compresseddata)
gzipper = gzip.GzipFile(fileobj=compressedstream)
data = gzipper.read() # data就是解壓後的數據!

Ⅳ 請問python的 zipfile 怎麼解壓中文密碼的zip文件

  • 是python2還是3?

  • 錯誤截圖看一下

  • 也可以私信發zip包和代碼來測試一下

Ⅳ python怎麼解壓壓縮的字元串數據

這個先要看看你的壓縮方式,找到對應的解壓方式就ok了。

如果解決了您的問題請採納!
如果未解決請繼續追問!

Ⅵ python怎樣壓縮和解壓縮ZIP文件(轉)

榭梢越�姓庋�牟僮鰲2還� Python 中的 zipfile 模塊不能處理多卷的情況,不過這種情況並不多見,因此在通常情況下已經足夠使用了。下面我只是對一些基本的 zipfile 操作進行了記錄,足以應付大部分的情況了。zipfile 模塊可以讓你打開或寫入一個 zip 文件。比如:import zipfilez = zipfile.ZipFile('zipfilename', mode='r') 這樣就打開了一個 zip 文件,如果mode為'w'或'a'則表示要寫入一個 zip 文件。如果是寫入,則還可以跟上第三個參數: compression=zipfile.ZIP_DEFLATED 或 compression=zipfile.ZIP_STORED ZIP_DEFLATED是壓縮標志,如果使用它需要編譯了zlib模塊。而後一個只是用zip進行打包,並不壓縮。在打開了zip文件之後就可以根據需要是讀出zip文件的內容還是將內容保存到 zip 文件中。讀出zip中的內容很簡單,zipfile 對象提供了一個read(name)的方法。name為 zip文件中的一個文件入口,執行完成之後,將返回讀出的內容,你把它保存到想到的文件中即可。寫入zip文件有兩種方式,一種是直接寫入一個已經存在的文件,另一種是寫入一個字元串。對 於第一種使用 zipfile 對象的 write(filename, arcname, compress_type),後兩個參數是可以忽略的。第一個參數是文件名,第二個參數是表示在 zip 文件中的名字,如果沒有給出,表示使用與filename一樣的名字。compress_type是壓縮標志,它可以覆蓋創建 zipfile 時的參數。第二種是使用 zipfile 對象的 writestr(zinfo_or_arcname, bytes),第一個參數是zipinfo 對象或寫到壓縮文件中的壓縮名,第二個參數是字元串。使用這個方法可以動態的組織文件的內容。類源碼為:[python] view plain# coding:cp936 # Zfile.py # xxteach.com import zipfile import os.path import os class ZFile(object): def __init__(self, filename, mode='r', basedir=''): self.filename = filename self.mode = mode if self.mode in ('w', 'a'): self.zfile = zipfile.ZipFile(filename, self.mode, compression=zipfile.ZIP_DEFLATED) else: self.zfile = zipfile.ZipFile(filename, self.mode) self.basedir = basedir if not self.basedir: self.basedir = os.path.dirname(filename) def addfile(self, path, arcname=None): path = path.replace('//', '/') if not arcname: if path.startswith(self.basedir): arcname = path[len(self.basedir):] else: arcname = '' self.zfile.write(path, arcname) def addfiles(self, paths): for path in paths: if isinstance(path, tuple): self.addfile(*path) else: self.addfile(path) def close(self): self.zfile.close() def extract_to(self, path): for p in self.zfile.namelist(): self.extract(p, path) def extract(self, filename, path): if not filename.endswith('/'): f = os.path.join(path, filename) dir = os.path.dirname(f) if not os.path.exists(dir): os.makedirs(dir) file(f, 'wb').write(self.zfile.read(filename)) def create(zfile, files): z = ZFile(zfile, 'w') z.addfiles(files) z.close() def extract(zfile, path): z = ZFile(zfile) z.extract_to(path) z.close()

Ⅶ python 用zipfile對文件進行壓縮並加密(不讓人解壓縮並修改文件)如何實現

>>>importzipfile
>>>_zipfile=zipfile.ZipFile(r'C:/Python27/test.zip','w',zipfile.ZIP_DEFLATED)
>>>_zipfile.write(r'C:/Python27/test')
>>>_zipfile.setpassword('nimei')
>>>_zipfile.close()

Ⅷ 怎樣用Python解壓縮*.tgz文件

import os
os.popen('tar -zxvf *.tgz')

Ⅸ python怎樣壓縮和解壓縮ZIP文件

使用 zipfile 模塊進行 ZIP 壓縮和解壓縮

importzipfile
importos.path
importos

classZFile(object):
def__init__(self,filename,mode='r',basedir=''):
self.filename=filename
self.mode=mode
ifself.modein('w','a'):
self.zfile=zipfile.ZipFile(filename,self.mode,compression=zipfile.ZIP_DEFLATED)
else:
self.zfile=zipfile.ZipFile(filename,self.mode)
self.basedir=basedir
ifnotself.basedir:
self.basedir=os.path.dirname(filename)

defaddfile(self,path,arcname=None):
path=path.replace('//','/')
ifnotarcname:
ifpath.startswith(self.basedir):
arcname=path[len(self.basedir):]
else:
arcname=''
self.zfile.write(path,arcname)

defaddfiles(self,paths):
forpathinpaths:
ifisinstance(path,tuple):
self.addfile(*path)
else:
self.addfile(path)

defclose(self):
self.zfile.close()

defextract_to(self,path):
forpinself.zfile.namelist():
self.extract(p,path)

defextract(self,filename,path):
ifnotfilename.endswith('/'):
f=os.path.join(path,filename)
dir=os.path.dirname(f)
ifnotos.path.exists(dir):
os.makedirs(dir)
file(f,'wb').write(self.zfile.read(filename))


defcreate(zfile,files):
z=ZFile(zfile,'w')
z.addfiles(files)
z.close()

defextract(zfile,path):
z=ZFile(zfile)
z.extract_to(path)
z.close()
熱點內容
linux是免費的嗎 發布:2024-11-15 15:53:44 瀏覽:616
多控存儲 發布:2024-11-15 15:52:42 瀏覽:282
一年級數學分解演算法 發布:2024-11-15 15:41:08 瀏覽:410
安卓個人熱點怎麼分享 發布:2024-11-15 15:40:16 瀏覽:263
墊錢解壓 發布:2024-11-15 15:38:54 瀏覽:335
miui4相當於安卓什麼系統 發布:2024-11-15 15:37:54 瀏覽:708
rc4android 發布:2024-11-15 15:27:25 瀏覽:741
電腦伺服器機箱圖片 發布:2024-11-15 15:27:18 瀏覽:114
網頁緩存文件提取 發布:2024-11-15 15:24:42 瀏覽:144
sqlserver提高 發布:2024-11-15 15:24:40 瀏覽:659