我在使用python搜索多个“.txt”文件中的特定字符串
我试图在多个.txt文件中搜索字符串“a.aiq”,并且我想要打印这些“.aiq”结果我在使用python搜索多个“.txt”文件中的特定字符串
到目前为止,我已经写下了代码。它没有给出任何错误,但没有给我想要的结果。
import glob
import re
import os
src = "C:\Python26\sample"
file_array = glob.glob(os.path.join(src,"*.txt"))
fi = open("aiq_hits.txt","w")
for input_file in file_array:
fo = open(input_file,"r")
line= fo.readline()
for line in fo:
line=line.strip()
x= re.findall('\S *.aiq\S*',line)
line= fo.readline()
for item in x:
fi.write("%s\n" % item)
fo.close()
fi.close()
str = fo.readline()
while str:
...
str = fo.readline()
应改为:
for str in fo:
的第一个问题是: 是file_array是否正确? 使用例如
for input_file in file_array:
print input_file #add parenthesis in python 3
file_array工作正常 – 2015-04-07 06:16:43
for循环抛出错误 – 2015-04-07 06:19:29
好的,所以你应该编写处理单个文件的代码,并尝试它。如果不起作用,请在这里发布一个简短的文件示例。 – 2015-04-07 07:56:29
改善你的问题描述你得到的结果。它与期望的结果有什么不同? – citxx 2015-04-06 11:26:02