您应该使用该
os.walk功能来浏览文件。使用字符串方法或正则表达式过滤掉结果。检查http://docs.python.org/library/os.html,以获取有关如何使用os.walk的信息。
import osimport redef findfiles(path, regex): regObj = re.compile(regex) res = [] for root, dirs, fnames in os.walk(path): for fname in fnames: if regObj.match(fname): res.append(os.path.join(root, fname)) return resprint findfiles('.', r'my?(reg|ex)')
现在,对于grep部分,您可以使用
open函数遍历文件
def grep(filepath, regex): regObj = re.compile(regex) res = [] with open(filepath) as f: for line in f: if regObj.match(line): res.append(line) return res
如果要获取行号,则可能需要调查该
enumerate功能。
编辑添加grep函数
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)