samurail

# -*- coding: utf-8 -*-
import os

#查找路径
PATH=\'D:\\lcc\'
#查找文件名后缀,如果为\'\'则查找所有文件
SUFFIX = \'.c\'       #查找.c文件
#查找的字符串
STRING = \'06\'
#存放文件名的链表
files = []
result = []

def getFiles(path):

    #如果路径不是以\\结尾则补上
    if path[-1:] != \'\\\':
        path += \'\\\'

    dirFiles = os.listdir(path)
    for file in dirFiles:
        filePath = path + file
        if os.path.isdir(filePath):
            getFiles(filePath + \'\\\')
        else:
            if SUFFIX == \'\' or file[-2:] == SUFFIX:
                files.append(filePath)

def findStr(files, str):
    for file in files:
        fp = open(file, \'r\')
        lines = fp.readlines()
        cnt = 0
        for line in lines:
            cnt+=1
            if line.find(str) > -1:
                #print file, \':\', cnt , line
                tmp = (file, cnt, line)
                result.append(tmp)
        fp.close()

if __name__ == \'__main__\':
    getFiles(PATH)
    #print \'files: \',files
    findStr(files, STRING)
    print result

分类:

技术点:

相关文章:

  • 2022-12-23
  • 2021-10-16
  • 2022-12-23
  • 2021-12-01
  • 2022-01-30
  • 2022-12-23
  • 2022-12-23
  • 2021-12-12
猜你喜欢
  • 2021-04-27
  • 2021-11-18
  • 2022-12-23
  • 2021-11-27
  • 2021-12-15
相关资源
相似解决方案