在尝试对生成的摘要进行METEOR指标评估时遇到的两个问题记录如下:
issue1:python中os.listdir( )函数读取文件夹下文件的乱序
import os
#获取目标文件夹的路径
filedir = os.getcwd()+'/decoded'
#获取当前文件夹中的文件名称列表
filenames = os.listdir(filedir)
filenames.sort(key = lambda x: int(x[:6]))
解决:增加sort
语句后得到按顺序排列的txt文件
issue2: decoded和reference中的多个txt文件合并后length不同
#打开当前目录下的result.txt文件,如果没有则创建
f = open('result.txt', 'w')
#先遍历文件名
for filename in filenames"
filepath = filedir+'/'+filename
#遍历单个文件,读取行数
for line in open(filename):
#去掉每个文件中的换行
line = line.strip('\n')
f.writelines(line)
f.write('\n')
#关闭文件
f.close()
解决:将每个txt文件中多句话之间的换行去掉