
ZIP 存档通常用于压缩和存储多个文件和文件夹。创建和解压缩 ZIP 存档是一项常见任务,但有时您可能需要从现有 ZIP 存档中删除特定文件或文件夹。Python 提供了各种库来处理 ZIP 存档,其中一个功能强大的库就是 Aspose.ZIP for Python。因此,让我们来学习如何用 Python 从 ZIP 压缩包中删除文件。
删除文件的 Python ZIP 库
从 ZIP 压缩包中删除文件
按名称删除 ZIP 存档中的文件
按索引删除 ZIP 压缩包中的文件
删除 ZIP 档案中文件的 Python 库
Aspose.ZIP for Python 是一个功能丰富的库,用于处理 ZIP 存档。它提供了用 Python 创建、操作以及从 ZIP 存档中提取文件和文件夹的简单而高效的方法。我们将使用该库删除 ZIP 存档中的文件。
您可以从 PyPI 下载或安装该库。
> pip install aspose-zip
用 Python 删除 ZIP 压缩包中的文件
您可以通过两种方式访问和删除 ZIP 压缩包中的文件:按名称或按索引。按名称删除文件在您确切知道 ZIP 存档中文件条目的名称时非常有用。或者,你需要删除名称中包含特定单词或短语的所有文件。另一方面,按索引删除文件适用于确切知道 ZIP 存档中文件顺序的情况。
下面让我们详细了解这两种方法。
按名称删除 ZIP 文件
要按名称删除文件,首先需要过滤符合/包含你提供的单词/短语的文件。有了要删除的文件列表后,就可以逐个从 ZIP 压缩包中删除它们了。以下是用 Python 从 ZIP 压缩包中删除文件的步骤。
首先,使用 Archive 类加载 ZIP 文件。
然后,循环查看 ZIP 压缩包中的文件。
筛选所需的文件/文件夹并将其添加到列表中。
使用 Archive.delete_entry(ArchiveEntry) 方法删除过滤列表中的每个条目。
最后,使用 Archive.save() 方法保存更新后的 ZIP 压缩包。
下面的代码片段展示了如何在 Python 中删除 ZIP 压缩包中的文件。
import aspose.zip as az
# Load the ZIP archive
with az.Archive("my_archive.zip") as archive:
# List to keep files to be deleted
entriesToDelete = []
# Loop through ZIP entries
for entry in archive.entries:
# Add file/folder into list
if "2" in entry.name.lower():
entriesToDelete.append(entry)
# Delete all listed entries
for entry in entriesToDelete:
archive.delete_entry(entry)
# Save updated ZIP archive
archive.save("updated-archive.zip")
通过索引删除 ZIP 中的文件
以下是使用索引从 ZIP 压缩包中删除文件的步骤。
首先,使用 Archive 类加载 ZIP 文件。
然后,使用 Archive.delete_entry(index) 方法从 ZIP 中删除所需的条目。
最后,使用 Archive.save() 方法保存更新后的 ZIP 压缩包。
下面的代码片段展示了如何通过索引从 ZIP 档案中删除文件。
import aspose.zip as az
# Load the ZIP archive
with az.Archive("my_archive.zip") as archive:
# Delete entry at index 0
archive.delete_entry(0)
# Save updated ZIP archive
archive.save("updated-archive.zip")
Python ZIP 库 - 获取免费许可证
获得免费的临时许可证,你就可以删除 ZIP 压缩包中的文件,而不受评估限制。
结论
在本文中,我们探讨了如何用 Python 从 ZIP 压缩包中删除文件。我们介绍了如何按名称或索引从 ZIP 压缩包中删除文件。无论您是需要从现有 ZIP 存档中删除不需要的文件,还是需要执行其他与 ZIP 相关的任务,Aspose.ZIP for Python 都能满足您的需求。只需安装该库,就能为您的 Python 应用程序提供高级 ZIP 归档功能。
渝公网安备50010702505508