在Python中使用zip文件

2025年1月5日 | 阅读 4 分钟

Python 是一种强大的编程语言,拥有丰富的库,可以轻松处理各种文件格式,包括 zip 文件。Zip 文件是压缩的存档,可以包含一个或多个文件和目录。它们通常用于打包和分发文件,以及减小大文件的大小以进行存储或传输。

在本文中,我们将探讨如何在 Python 中使用 zip 文件。我们将介绍如何创建、提取和操作 zip 文件,以及如何遍历 zip 文件的内容和向现有 zip 存档添加新文件。

创建 Zip 文件

要在 Python 中创建 zip 文件,可以使用 zipfile 模块。以下示例演示了如何创建一个名为 example.zip 的 zip 文件,其中包含两个文件 file1.txt 和 file2.txt。

输出

Adding file1.txt to example.zip
Adding file2.txt to example.zip

在此示例中,我们首先导入 zipfile 模块。然后,我们指定要压缩的文件列表以及 zip 文件的名称。最后,我们使用 with 语句创建一个新的 zip 文件(example.zip)并使用 write 方法将文件添加到其中。

从 Zip 文件中提取文件

要在 Python 中从 zip 文件中提取文件,可以使用 ZipFile 类的 extractall 方法。以下示例演示了如何从名为 example.zip 的 zip 文件中提取所有文件。

输出

The files from example.zip will be extracted to the current working directory.

在此示例中,我们首先导入 zipfile 模块。然后,我们指定 zip 文件(example.zip)的名称,并使用 with 语句以读取模式('r')打开 zip 文件,并使用 extractall 方法从中提取所有文件。

遍历 Zip 文件的内容

要在 Python 中遍历 zip 文件的内容,可以使用 ZipFile 类的 namelist 方法。以下示例演示了如何打印名为 example.zip 的 zip 文件中所有文件的名称。

输出

The names of all files in example.zip will be printed to the console.

在此示例中,我们首先导入 zipfile 模块。然后,我们指定 zip 文件(example.zip)的名称,并使用 with 语句以读取模式('r')打开 zip 文件。然后,我们使用 namelist 方法遍历 zip 文件中的所有文件名称,并将它们打印到控制台。

向现有 Zip 存档添加文件

要在 Python 中向现有 zip 存档添加文件,可以使用具有 a(追加)模式的 ZipFile 类的 write 方法。以下示例演示了如何将名为 new_file.txt 的新文件添加到名为 example.zip 的现有 zip 存档中。

输出

new_file.txt will be added to example.zip

在此示例中,我们首先导入 zipfile 模块。然后,我们指定现有 zip 存档(example.zip)的名称以及要添加的新文件(new_file.txt)的名称。我们使用 with 语句以追加模式('a')打开现有 zip 存档,并使用 write 方法将新文件添加到其中。

结论

在 Python 中处理 zip 文件非常简单,可以使用 zipfile 模块完成。在本文中,我们介绍了如何创建、提取和操作 zip 文件,以及如何遍历 zip 文件的内容和向现有 zip 存档添加新文件。Zip 文件是打包和分发 Python 中文件的便捷方式,而 zipfile 模块提供了灵活且易于使用的接口来处理它们。