批量查寻多个文件中匹配的位置
批量查找多个文件中匹配的位置
许久未写python代码了,都生疏了。一定要多练啊。。
#! /usr/bin/env python # -*- coding: utf-8 -*- import os,re def listDir(path): li=os.listdir(path) return li; s=raw_input("please input the directory:") mPattern=raw_input("please input the pattern:") if len(s)==0: s=u"E:\\实验\\两阶段" os.chdir(s) li=listDir(s) #print listDir(s) #print os.getcwd().decode('gb2312') #print li save_dir="c:\\%s.txt" % mPattern out=open(save_dir,"w") for l in li: if not os.path.isfile(l): continue; f=open(l.encode("utf-8")) cnt=0; lineno=1 for p in f.readlines(): r=re.findall(mPattern,p) if len(r)>0: if cnt==0: print "[",l.decode("gb2312"),"]" out.write("[ %s ]\n" % l) cnt=cnt+1 print lineno ,":", p.decode("gb2312") out.write("%d:%s\n" % (lineno,p)) lineno=lineno+1 f.close() out.close()