您的位置:首页 > 编程语言 > Python开发

用Python遍历文件并搜索文件内容

2007-07-30 09:34 946 查看
上一次用Python的2种方法遍历文件,这次参考了一下Python Promgramming 3rd 里面的代码,用os.path.walk来遍历文件,并且搜索文件里面的内容

search_content.py


import os, sys


listonly = False


skipexts = ['.gif', '.exe', '.pyc', '.o', '.a','.dll','.lib','.pdb','.mdb'] # ignore binary files




def visitfile(fname, searchKey): # for each non-dir file


global fcount, vcount


try:


if not listonly:


if os.path.splitext(fname)[1] in skipexts:


pass


elif open(fname).read().find(searchKey) != -1:


print'%s has %s' % (fname, searchKey)


fcount += 1


except: pass


vcount += 1




def visitor(args, directoryName,filesInDirectory): # called for each dir


for fname in filesInDirectory:


fpath = os.path.join(directoryName, fname)


if not os.path.isdir(fpath):


visitfile(fpath,args)




def searcher(startdir, searchkey):


global fcount, vcount


fcount = vcount = 0


os.path.walk(startdir, visitor, searchkey)




if __name__ == '__main__':


root=raw_input("type root directory:")


key=raw_input("type key:")


searcher(root,key)


print 'Found in %d files, visited %d' % (fcount, vcount)

windows调试通过!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐