Нужен скрипт на python для поиска определенных ключевых слов в коллекции файлов sql, возвращающий индекс того, где было найдено каждое ключевое слово - PullRequest
1 голос
/ 01 июля 2011

Я чрезвычайно новичок в python, и мне было просто интересно, как я могу взять набор файлов (sql) и, используя некоторые конкретные ключевые слова, найти, какой строке кода они соответствуют во всех файлах. Любые идеи, идеи или предложения будут полезны для жизни.

С уважением

Tiago M

Ответы [ 2 ]

2 голосов
/ 01 июля 2011

Решение

s = 'somestring'
names = ['file1.sql', 'file2.sql']
for n in names:  
    f = open(n)
    lines = f.readlines()
    for i, l in enumerate(lines):
        if s in l:
            print 'line %d' % (i)
1 голос
/ 01 июля 2011

Вы хотите посмотреть на функцию os.walk, затем open каждого файла и использовать in, string.find или re.search в строках каждого файла. Например:

search_term = "where x > 1"
for directory, subdirectories, paths in os.walk("/path/to/sql_directory"):
    for path in paths:
        f = open(path, "r")
        for line_no, line in enumerate(f):
             if search_term in line: # could use re module functions here
                 print "%s(%d): %s"%(path, line_no, line)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...