提交如果我做這樣的事情:蟒蛇如何追加在zip壓縮包
from zipfile import ZipFile
zip = ZipFile(archive, "a")
for x in range(5):
zip.writestr("file1.txt", "blabla")
這將創建5個文件都命名爲「FILE1.TXT」的歸檔。我想實現的是每個循環迭代附加一個壓縮文件。是否有可能沒有某種輔助緩衝區,以及如何做到這一點?
提交如果我做這樣的事情:蟒蛇如何追加在zip壓縮包
from zipfile import ZipFile
zip = ZipFile(archive, "a")
for x in range(5):
zip.writestr("file1.txt", "blabla")
這將創建5個文件都命名爲「FILE1.TXT」的歸檔。我想實現的是每個循環迭代附加一個壓縮文件。是否有可能沒有某種輔助緩衝區,以及如何做到這一點?
這是不可能的壓縮文件包,但在gzip支持寫入壓縮文件:
import gzip
content = "Lots of content here"
f = gzip.open('/home/joe/file.txt.gz', 'wb')
f.write(content)
f.close()
它很可能追加使用Python文件到壓縮歸檔。
在測試了Linux Mint的14,Python 2.7版
import zipfile
#Create compressed zip archive and add files
z = zipfile.ZipFile("myzip.zip", "w",zipfile.ZIP_DEFLATED)
z.write("file1.ext")
z.write("file2.ext")
z.printdir()
z.close()
#Append files to compressed archive
z = zipfile.ZipFile("myzip.zip", "a",zipfile.ZIP_DEFLATED)
z.write("file3.ext")
z.printdir()
z.close()
#Extract all files in archive
z = zipfile.ZipFile("myzip.zip", "r",zipfile.ZIP_DEFLATED)
z.extractall("mydir")
z.close()
我相信這個問題的明確解讀是,OP想要附加到'file1.ext',在多次迭代中向該現有文件添加額外的內容,而不是添加額外的文件。 – 2018-02-28 16:12:43
@MoSander:我認爲mnowotka希望能夠在歸檔中添加內容到一個文件,不是一個文件附加到檔案。 – abw333 2015-11-21 21:17:22
@ abw333是的,我現在也看到了。將檔案追加到檔案中是我在這篇文章中想要做的* – 2015-11-25 09:40:39