使用Python将多个.gz文件解压缩为单个文本文件



我试图解压缩多个。gz扩展文件到单个。txt文件。所有这些文件都有json数据。

我尝试了以下代码:

from glob import glob
import gzip
for fname in glob('.../2020-04/*gz'):
with gzip.open(fname, 'rb') as f_in:
with open('.../datafiles/202004_twitter/decompressed.txt', 'wb') as f_out:
shutil.copyfileobj(f_in, f_out)

但是解压后的。txt文件中只有最后一个。gz文件的数据。

只是将f_out洗牌到外面,所以在遍历输入文件之前打开它,并保持一个句柄打开。

from glob import glob
import gzip
with open('.../datafiles/202004_twitter/decompressed.txt', 'wb') as f_out:
for fname in glob('.../2020-04/*gz'):
with gzip.open(fname, 'rb') as f_in:
shutil.copyfileobj(f_in, f_out)

请使用"wba"模式。a以追加方式打开。w单独将在打开时擦除文件。

最新更新