ZIP 存檔通常用於壓縮和存儲多個文件和文件夾。雖然創建和提取 ZIP 存檔是一項常見任務,但有時您可能需要從現有 ZIP 存檔中刪除特定文件或文件夾。 Python 提供了各種用於處理 ZIP 存檔的庫,其中一個功能強大的庫是 Aspose.ZIP for Python。那麼讓我們學習如何使用 Python 從 ZIP 存檔中刪除文件。
用於刪除 ZIP 檔案中文件的 Python 庫
Aspose.ZIP for Python 是一個功能豐富的庫,用於處理 ZIP 檔案。它提供了簡單有效的方法來使用 Python 從 ZIP 存檔中創建、操作和提取文件和文件夾。我們將使用該庫從 ZIP 存檔中刪除文件。
> pip install aspose-zip
在 Python 中刪除 ZIP 存檔中的文件
您可以通過兩種方式訪問和刪除 ZIP 存檔中的文件:按名稱或按索引。當您確切知道 ZIP 存檔中文件條目的名稱時,按名稱刪除文件非常有用。或者您需要刪除名稱中包含特定單詞或短語的所有文件。另一方面,當您確切知道 ZIP 存檔中文件的順序時,可以使用按索引刪除文件。
那麼讓我們詳細看看這兩種方式。
按名稱從 ZIP 中刪除文件
要按名稱刪除文件,您首先需要過濾與您提供的單詞/短語匹配/包含的文件。獲得要刪除的文件列表後,您可以將它們從 ZIP 存檔中一一刪除。以下是在 Python 中從 ZIP 存檔中刪除文件的步驟。
- 首先,使用 Archive 類加載 ZIP 文件。
- 然後,循環瀏覽 ZIP 存檔中的文件。
- 過濾所需的文件/文件夾並將它們添加到列表中。
- 使用 Archive.deleteentry(ArchiveEntry) 方法刪除過濾列表中的每個條目。
- 最後,使用 Archive.save() 方法保存更新的 ZIP 存檔。
以下代碼片段顯示瞭如何使用 Python 刪除 ZIP 存檔中的文件。
import aspose.zip as az
# 加載 ZIP 存檔
with az.Archive("my_archive.zip") as archive:
# 保留要刪除的文件的列表
entriesToDelete = []
# 循環遍歷 ZIP 條目
for entry in archive.entries:
# 將文件/文件夾添加到列表中
if "2" in entry.name.lower():
entriesToDelete.append(entry)
# 刪除所有列出的條目
for entry in entriesToDelete:
archive.delete_entry(entry)
# 保存更新的 ZIP 存檔
archive.save("updated-archive.zip")
按索引刪除 ZIP 中的文件
以下是使用索引從 ZIP 存檔中刪除文件的步驟。
- 首先,使用 Archive 類加載 ZIP 文件。
- 然後,使用 Archive.deleteentry(index) 方法從 ZIP 中刪除所需的條目。
- 最後,使用 Archive.save() 方法保存更新的 ZIP 存檔。
下面的代碼片段展示瞭如何通過索引從 ZIP 存檔中刪除文件。
import aspose.zip as az
# 加載 ZIP 存檔
with az.Archive("my_archive.zip") as archive:
# 刪除索引 0 處的條目
archive.delete_entry(0)
# 保存更新的 ZIP 存檔
archive.save("updated-archive.zip")
Python ZIP 庫 - 獲取免費許可證
您可以通過獲取免費的臨時許可證來刪除 ZIP 存檔內的文件,而不受評估限制。
學習資源
使用以下資源了解有關 Python ZIP 庫的更多信息:
在線 ZIP 工具
我們還開發了一些有用的用於處理 ZIP 檔案的在線工具。這些工具完全免費,由 Aspose.ZIP for Python 提供支持。
結論
在這篇博文中,我們探討瞭如何使用 Python 從 ZIP 存檔中刪除文件。我們已經介紹瞭如何按名稱或按索引從 ZIP 存檔中刪除文件。無論您需要從現有 ZIP 存檔中刪除不需要的文件還是執行其他 ZIP 相關任務,Aspose.ZIP for Python 都能滿足您的需求。只需安裝該庫即可通過高級 ZIP 歸檔功能豐富您的 Python 應用程序。