搜索的話,我想寫收集在一個目錄下的所有文件的名稱,然後搜索他們每個人給定詞的腳本。每次找到該單詞時,都應該打印該文件的名稱和包含該單詞的完整行。 此外,在一個新文件中,我想打印找到該單詞的次數。蟒蛇:在不同的文件
這是我到目前爲止有:
import os
print(os.listdir('./texts'), '\n\n\n')
suchwort ={"computational":0,"linguistics":0,"processing":0,"chunking":0,"coreference":0,"html":0,"machine":0}
hitlist = './hits.txt'
with open(hitlist, 'a+') as hits:
for elem in os.listdir('./texts'):
with open(os.path.join("./texts",elem)) as fh:
for line in fh:
words = line.split(' ')
print(elem, " : ",line)
for n in words:
if n in suchwort:
if n in suchwort.keys():
suchwort[n]+=1
else:
suchwort[n]=1
for k in suchwort:
print(k,":",suchwort[k],file=hits)
在新文件中(hits.txt)結果是:
chunking : 0
machine : 9
html : 0
processing : 4
linguistics : 12
coreference : 1
computational : 12
的值。然而似乎是錯誤的,因爲這個詞「html」位於其中一個文件中。
排序無關,但這個'如果n在suchwort.keys():'是uneccesary,因爲多數民衆贊成什麼'如果n在suchwort:'做了。 –
回到問題,這可能是一個套管問題?嘗試'如果n.lower()在suchwort:'而是看看是否有幫助? –
謝謝,但它不是套管問題,我只是以小寫字母搜索「html」。 –