我想出了这段代码。我没有得到任何保存在输出,它保持空白。虽然代码有效但我看到正确的匹配在控制台中打印。
for item in somelist:
with open('eng.txt','r') as dic, open('output.txt', 'w') as output:
for line in dic:
if re.match(item, line):
output.write(line)
print line
我尝试了另一个版本:
for item in somelist:
with open('eng.txt','r') as dic:
for line in dic:
if re.match(item, line):
with open('output.txt', 'w') as output:
output.write(line)
print line
这样它只保存最后一行,但不保存所有匹配。我该如何解决?
答案 0 :(得分:4)
像这样,在第一步打开输出文件,然后根据需要写入文件。
with open('output.txt', 'w') as output:
for item in final_list:
with open('eng.txt','r') as dic:
for line in dic:
if re.match(item, line):
output.write(line)
print line
您在第二个代码段中每次新建时都创建了文件对象 output 。