extract a sentence that contains a list of keywords or phrase using python
<p>I have used the following code to extract a sentence from file(the sentence should contain some or all of the search keywords)</p>

<pre><code>search_keywords=['mother','sing','song']
with open('text.txt', 'r') as in_file:
    text = in_file.read()
    sentences = text.split(".")

for sentence in sentences:
    if (all(map(lambda word: word in sentence, search_keywords))):
        print sentence
</code></pre>

<p>The problem with the above code is that it does not print the required sentence if one of the search keywords do not match with the sentence words. I want a code that prints the sentence containing some or all of the search keywords. It would be great if the code can also search for a phrase and extract the corresponding sentence.</p>

<p>If I understand correctly, you should be using <a href="https://docs.python.org/3/library/functions.html#any" rel="nofollow"><code>any()</code></a> instead of <code>all()</code>.</p>

<pre><code>if (any(map(lambda word: word in sentence, search_keywords))):
    print sentence
</code></pre>

python file search text