python检索特定内容的文本文件实例
windows环境下python2.7
脚本指定一个参数作为要检索的字符串
例如:>find.py./hello
#coding=utf-8
importos
importsys
#找到当前目录下的所有文本文件
deffindFile(path):
f=[]
d=[]
l=os.listdir(path)
forxinl:
ifos.path.isfile(os.path.join(os.getcwd()+"\\",x)):
f.append(x)
else:
d.append(x)
returnf,d#返回文件和目录的列表
#printx,"\n",y
#统计一个文本内字符串的个数
deffindstrCount(file,strToFind):
count=0
thefile=open(file,'rb')
whileTrue:
buffer=thefile.read()
ifnotbuffer:
break
count+=buffer.count(strToFind)
thefile.close()
returncount
#遍历文件列表中,包含特定字符串的文件
deffindstr(file,str):
#f=open(file,"r+")
#iff.read().find(str)!=-1:
#s=os.getcwd()+"\\"+file
#else:
#s="None"
#f.close()
i=1
globals
forlineinopen(file):
#returnisindexofthestrstartposition.
ifline.find(str)!=-1:
s=os.getcwd()+"\\"+file+"------>line:%d"%(i)
prints
i=i+1
returns
L=[]#全局变量,存放找到的目标文件
deffind(p,str):
try:
f,d=findFile(p)
forxinf:
Ret=findstr(x,str)
ifRet:
L.append(Ret)
ifd:
forxind:
os.chdir(x)
find("./",str)
os.chdir('../')
exceptException,e:
printe
finally:
pass
if__name__=='__main__':
s=0
find(sys.argv[1],sys.argv[2])
以上这篇python检索特定内容的文本文件实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。