Python ищет строку и печатает файл, в котором она находится

Я работаю над небольшой программой для работы, и я везде искал помощи в этом!

Я пытаюсь разрешить пользователю вводить строку для поиска. Программа выполнит поиск строки в нескольких файлах .txt в определенной директории, а затем либо распечатает результат, либо откроет файл .txt с помощью текстового редактора по умолчанию.

Можно, пожалуйста, указать мне правильное направление для этой функции поиска?

Заранее спасибо!

Редактировать: это то, что я до сих пор. Я не могу использовать grep, так как эта программа будет работать как на Windows, так и на OSX. Я еще не тестировал Windows, но в OSX мои результаты запрещены.

import os
    import subprocess

    text = str(raw_input("Enter the text you want to search for: "))

    thedir = './f'
    for file in os.listdir(thedir):
        document = os.path.join(thedir, file)
        for line in open(document):
            if text in line:
                subpocess.call(document, shell=True)

Ответы на вопрос(3)

Ваш ответ на вопрос