擅长:python、mysql、java
<p>只需按空格将行拆分为一个数组,然后就可以在数组中找到dog并在其前面打印元素。在</p>
<pre><code>with open('titles_500subset.txt') as searchfile:
for line in searchfile:
words = line.lower().split()
if 'dog' in words[1:]:
print words[words.index('dog')-1]
</code></pre>
<p>如果你想让它每行检测到多个狗,那就需要多一点,但是如果空格对你来说很重要的话,它就可以更简单地获取某些单词。在</p>
<p>同样,我这样做的方式会使整个文档变为小写,因此如果您不希望它那样工作,您需要为此添加额外的检查。在</p>
<p>我改变了if条件来检查它是否发现“Dog”的索引大于零,因此它可以有效地检查Dog是否存在,并确保它不在句子的开头。(如果它在0处找到dog,则在-1处查找前面的单词,这意味着它从该行中取最后一个单词,这是不希望的行为)</p>
<p>如果要检查多个关键字:</p>
^{pr2}$
<p>只需在关键字列表中添加任何你想搜索的单词。在</p>