我试图用文件2中更正的值替换文件1中有“错误”的行(见下文)。在
文件1:
MAGA 0.0159
TTKI error
MCCN 0.0391
NEFD 0.9982
ESYA error
文件2:
^{pr2}$期望输出:
MAGA 0.0159
TTKI 0.7652
MCCN 0.0391
NEFD 0.9982
ESYA 0.5517
下面是我一直在努力做到这一点,但我认为我已经走得太远了,在过去的一个小时里,我越来越沮丧,所以任何帮助都将不胜感激。在
section2 = []
f2 = open('file2', 'r')
for line2 in f2:
section2.append(str(line2.split(' ',0)))
f1 = open('file1', 'r')
for line1 in f1:
if str(section2[0]) in line1:
print section2[0]
else:
print line1
使用字典而不是数组:
以下是您的字典在读取更正文件后的外观:
^{pr2}$当
file1
被读取时,行也被拆分,只是为了检查第一个值是否是字典中的键之一(key in corrections
)。如果不是,则只打印原始行(即使它包含error
)。但是如果我们有一个更正,它会被打印出来(print (key, corrections[key]
)。这里我们使用print
在其参数之间插入一个空格。在您可以创建一个正确值的
dict
然后呢
^{pr2}$简单的逻辑是:
打开第二个文件并从中创建词典。 读取文件1行/行 在线搜索错误, 如果找到 获取错误行的第一个字 从字典中得到相应的值 将错误替换为您得到的值 将该行写入第三个文件
相关问题 更多 >
编程相关推荐