我想在Python中使用grep來搜索文本文件中的單詞。我試過這樣的東西 -在Python中使用grep來搜索只有確切的單詞
subprocess.call(['/bin/grep', str(word), "textFile.txt"])
這一行打印控制檯上的所有輸出。而且,即使單詞不完全匹配,它也會返回true。例如,它返回一個字,即使這場比賽 - xxxwordsxxx
def find_words(in_file, out_file):
for word in in_file:
word = word.rstrip()
subprocess.call(["grep", "-w", word, "textFile.txt"])
編輯 我in_file中和TextFile.txt的是相同的。
如何實現搜索確切的單詞?如果這不是一個正確的方法,有沒有其他方法可以做這個搜索? (這是一個巨大的文本文件,我必須要找到的文件中的所有單詞重複)
'subprocess.clas' - 是不正確 – RomanPerekhrest
'call'應被使用,'clas'是一個錯字。至於整個單詞,你可以嘗試用'r'\ b {} \ b「.format(word)'替換'word'嗎?或'r'\ <{}\>「.format(word)'?甚至可能是'r'[[:<:]]{}[[:>:]]「.format(word)'?您可以刪除''-w'' –
@WiktorStribiżew我試圖用'r「\ b {} \ b」.format(word)'替換'word'並且我仍然面臨相同的錯誤 – MMG