在 Python 中将数据写入 zip 存档

Posted

技术标签:

【中文标题】在 Python 中将数据写入 zip 存档【英文标题】:Writing data to a zip archive in Python 【发布时间】:2015-06-03 22:27:09 【问题描述】:

过去有人告诉我,将字符串写入 zip 文件根本没有简单的方法。可以从 zip 存档中读取,但如果要写入 zip 文件,最好的选择是将其解压缩,进行更改,然后再次压缩。但是,我正在使用的库 (openpyxl) 完成了无需任何提取即可写入 zip 文件的壮举。此包使用 python ZipFile 库中的 writestr() 函数进行更改。有人可以向我解释这到底是怎么可能的吗?我知道这与写入字节有关,但我不能很好地解释。

我知道这个问题含糊不清,但这是我对该主题缺乏了解的情况。

【问题讨论】:

你可能想看看 python "tar" 模块 @DamiánMontenegro OP 没有要求库,他问他的图书馆可能是如何做到的。 【参考方案1】:

openpyxl 不会修改文件,因为您不能对 zipfile 进行此操作。您必须提取、修改和归档。我们只是将这个进程隐藏在库中。

【讨论】:

究竟如何?我一直在倾注源代码,因为我正在尝试使该过程适应 .docx 文件并最终适应所有 Microsoft Office 应用程序。我似乎无法找到“工作”的模块/功能

以上是关于在 Python 中将数据写入 zip 存档的主要内容,如果未能解决你的问题,请参考以下文章

在python中将文本写入zipfile

从 ByteStream 创建 ZIP/TGZ 存档

在 Python 中将 zip 列表保存到 csv

使用 python 将二进制数据写入 zip 文件

在 Python 中将二进制数据写入文件

Python,在内存中写入 zip 到文件