❤️ 博客主页:水滴技术
订阅专栏:Python 入门核心技术
支持水滴:点赞 + 收藏⭐ + 留言
大家好,我是水滴~~
Python 提供了多个文件压缩模块,包括 gzip、zipfile 和 tarfile 等。这些模块可以用来创建、读取和解压缩各种类型的压缩文件。在本教程中,我们将介绍这些模块的基本用法。
gzip 模块可以用于创建和读取 gzip 文件。gzip 文件是一种经过压缩的文件格式,通常用于在网络传输和数据存储中减小文件大小。
要创建 gzip 文件,可以使用 gzip 模块中的 GzipFile 类。示例代码如下:
import gzip
with gzip.open('example.txt.gz', 'wb') as f:
f.write(b'Hello, world!')
在上述代码中,我们使用 gzip.open() 函数创建了一个名为 example.txt.gz 的 gzip 文件,使用 ‘wb’ 模式打开文件并写入数据。
要读取 gzip 文件,可以使用 gzip 模块中的 GzipFile 类。示例代码如下:
import gzip
with gzip.open('example.txt.gz', 'rb') as f:
data = f.read()
print(data)
在上述代码中,我们使用 gzip.open() 函数打开了一个名为 example.txt.gz 的 gzip 文件,使用 ‘rb’ 模式读取文件并读取数据。
如果要将解压后的数据写入文件,可以使用类似以下的代码:
import gzip
with gzip.open('example.txt.gz', 'rb') as f_in:
with open('example.txt', 'wb') as f_out:
f_out.write(f_in.read())
在以上代码中,我们首先使用gzip模块中的GzipFile类读取gzip文件中的数据,然后再使用Python内置的open()函数打开一个新文件,使用’wb’模式写入数据,最后使用write()方法将解压后的数据写入该文件。
zipfile 模块可以用于创建、读取和解压缩 zip 文件。zip 文件是一种经过压缩的文件格式,通常用于在网络传输和数据存储中减小文件大小。
要创建 zip 文件,可以使用 zipfile 模块中的 ZipFile 类。示例代码如下:
import zipfile
with zipfile.ZipFile('example.zip', 'w') as f:
f.write('example.txt')
在上述代码中,我们使用 zipfile.ZipFile() 函数创建了一个名为 example.zip 的 zip 文件,使用 ‘w’ 模式打开文件并写入数据。
要读取 zip 文件,可以使用 zipfile 模块中的 ZipFile 类。示例代码如下:
import zipfile
with zipfile.ZipFile('example.zip', 'r') as f:
data = f.read('example.txt')
print(data)
在上述代码中,我们使用 zipfile.ZipFile() 函数打开了一个名为 example.zip 的 zip 文件,使用 ‘r’ 模式读取文件并读取数据。
要解压缩 zip 文件,可以使用 zipfile 模块中的 ZipFile 类。示例代码如下:
import zipfile
with zipfile.ZipFile('example.zip', 'r') as f:
f.extractall()
在上述代码中,我们使用 zipfile.ZipFile() 函数打开了一个名为 example.zip 的 zip 文件,使用 ‘r’ 模式读取文件并解压缩所有文件到当前目录。
tarfile 模块可以用于创建、读取和解压缩 tar 文件。tar 文件是一种经过压缩的文件格式,通常用于在网络传输和数据存储中减小文件大小。
要创建 tar 文件,可以使用 tarfile 模块中的 TarFile 类。示例代码如下:
import tarfile
with tarfile.open('example.tar.gz', 'w:gz') as f:
f.add('example.txt')
在上述代码中,我们使用 tarfile.open() 函数创建了一个名为 example.tar.gz 的 tar 文件,使用 ‘w:gz’ 模式打开文件并写入数据。
要读取 tar 文件,可以使用 tarfile 模块中的 TarFile 类。示例代码如下:
import tarfile
with tarfile.open('example.tar.gz', 'r:gz') as f:
data = f.extractfile('example.txt').read()
print(data)
在上述代码中,我们使用 tarfile.open() 函数打开了一个名为 example.tar.gz 的 tar 文件,使用 ‘r:gz’ 模式读取文件并读取数据。
要解压缩 tar 文件,可以使用 tarfile 模块中的 TarFile 类。示例代码如下:
import tarfile
with tarfile.open('example.tar.gz', 'r:gz') as f:
f.extractall()
在上述代码中,我们使用 tarfile.open() 函数打开了一个名为 example.tar.gz 的 tar 文件,使用 ‘r:gz’ 模式读取文件并解压缩所有文件到当前目录。
需要注意的是,tar 文件可以使用不同的压缩算法进行压缩,例如 gzip、bzip2 和 xz 等。因此,在使用 tarfile 模块时需要根据具体情况选择合适的模式。例如,如果要解压缩一个使用 bzip2 算法压缩的 tar 文件,可以使用 ‘r:bz2’ 模式打开文件。
Python 的文件压缩模块提供了创建、读取和解压缩各种类型的压缩文件的功能。在本教程中,我们介绍了 gzip、zipfile 和 tarfile 三个模块的基本用法,包括创建、读取和解压缩文件。对于需要处理压缩文件的 Python 程序,这些模块是非常有用的工具。
Python 进阶(一):PyCharm 下载、安装和使用
Python 进阶(二):操作字符串的常用方法
Python 进阶(三):正则表达式(re 模块)
Python 进阶(四):日期和时间(time、datetime、calendar 模块)
Python 进阶(五):os 模块
Python 进阶(六):文件读写(I/O)
Python 进阶(七):高级文件操作(shutil 模块)
《Python入门核心技术》
《IDEA 教程:从入门到精通》
《Java 教程:从入门到精通》
《MySQL 教程:从入门到精通》
《大数据核心技术从入门到精通》