我正在尝试从python脚本解压缩 .targ.gz 文件,并解析以 stats.txt 结尾的文件内容。它在python 3版本中很好用。但是,相同的脚本不适用于python2。如何在python 2中也实现相同的功能。 python 2中io.TextIOWrapper函数的最佳替代方法是什么?
我尝试了以下替代方法,并且都可以正常工作。
null
我正在尝试找出python 2中 io.TextIOWrapper 函数的其他最佳替代方法
obj= tar_file.extractfile(file_name)
obj = codecs.getreader("utf-8")(tar_file.extractfile(file_name))
#!/usr/bin/python
import io
import tarfile
import codecs
def get_tar_file_and_print_the_line(tarfile_name):
tar_file = tarfile.open(tarfile_name, 'r:gz')
for file_name in tar_file.getnames():
print(file_name)
if file_name.endswith('stats.txt'):
#obj= tar_file.extractfile(file_name) >> Works Well in Python 2
#obj = codecs.getreader("utf-8")(tar_file.extractfile(file_name)) >> Works well in python 2
obj = io.TextIOWrapper(tar_file.extractfile(file_name), encoding='utf8', newline='\n')
for line in obj:
line = line.rstrip()
print(line)
get_tar_file_and_print_the_line('sample.tar.gz')