プログラムを検索する(ファイル、リスト)、検索するには、リスト内の単語を含むテキストを検索するそれをリストに入れて次の単語に移動します。それぞれの文書について、単語を見つけたら、「このファイルのディレクトリ」の中で「word [0]、word [1]、word [2]」と書かれた文章を印刷したいと思います。これまでに試したことは次の通りです:リスト内の単語を含むファイルをディレクトリから検索する
import os
def search(file, list):
if list == []:
return
else:
if os.path.isfile(file):
try:
infile = open(file, 'r')
doc = infile.read()
except:
return
infile.close()
print ('Searching {}'.format(file))
if list[0] in doc:
print('{} in {}'.format(list[0], file))
elif os.path.isdir(file):
for item in os.listdir(file):
itempath = os.path.join(file, item)
search(itempath, list)
return search(file, list[1:])
再帰呼び出し 'return search(itempath、list)'を返すのを忘れた – karthikr
ありがとうございます、今すぐリストを実行するようにしましたが、プロンプトで追加の手順を忘れて今質問を更新しました – calculator2compiler
単語を1つずつ見たい場合は、 'return search(file、list [1:])'を返すのではなく、リストを反復するだけで意味がありませんか? –