使用GzipFile()函数在Python中压缩和解压CSV文件
发布时间:2023-12-27 23:26:06
在Python中,可以使用GzipFile()函数来压缩和解压CSV文件。GzipFile()函数是Gzip模块提供的,可以用于创建gzip文件对象,然后可以使用read()和write()方法进行读写操作。下面是一个简单的例子:
首先,我们需要先导入gzip模块和csv模块:
import gzip import csv
接下来,我们可以使用GzipFile()函数来创建一个gzip文件对象,并指定要压缩的文件和gzip文件的模式('rb'表示读取二进制文件,'wb'表示写入二进制文件):
with gzip.GzipFile('compressed_file.gz', mode='wb') as gzfile:
with open('input.csv', mode='rb') as csvfile:
reader = csv.reader(csvfile)
writer = csv.writer(gzfile)
# 读取CSV文件并写入gzip文件
for row in reader:
writer.writerow(row)
在上述例子中,我们打开了名为'input.csv'的CSV文件,并创建了一个名为'compressed_file.gz'的gzip文件。然后,我们使用csv.reader()函数创建一个CSV阅读器对象,使用csv.writer()函数创建一个CSV写入器对象。最后,我们遍历CSV文件中的每一行,并将其写入到gzip文件中。
在解压CSV文件时,我们可以使用相似的方法。在这种情况下,我们可以打开gzip文件来读取压缩文件的内容,并使用csv.writer()函数将其写入到CSV文件中:
with gzip.GzipFile('compressed_file.gz', mode='rb') as gzfile:
with open('output.csv', mode='w') as csvfile:
reader = csv.reader(gzfile)
writer = csv.writer(csvfile)
# 读取gzip文件并写入CSV文件
for row in reader:
writer.writerow(row)
在上述例子中,我们打开了名为'compressed_file.gz'的gzip文件,并创建了一个名为'output.csv'的CSV文件。然后,我们使用csv.reader()函数创建一个阅读器对象,使用csv.writer()函数创建一个写入器对象。最后,我们遍历gzip文件中的每一行,并将其写入到CSV文件中。
以上就是使用GzipFile()函数在Python中压缩和解压CSV文件的示例。
