Pythonで、ファイルから文章を取り込み、検索した単語がどの文に含まれていて何回出てくるか検索するようなものを作ってみたいのです。文ごとにリストを作製してそこから検索する際にforなどを用いて文ごとにリストを作製することはできないでしょうか。
text = open("test.txt",encoding="utf-8")
t = text.read()
sentence = t.split("\n")
for tt in sentence:
tt = tt.replace(",","") # ,を削除
tt = tt.replace(".","") # .を削除
tt = tt.replace(";","") # ;を削除
tt = tt.replace("?","") # ?を削除
tt = tt.replace("!","") # !を削除
words = tt.split()
#小文字でもOKにしたい
swords = []
for s in words:
ss = s.lower()
swords.append(ss)
k = input("検索ワードを入力")
if words.count(k) >= 1:
print("合計で",words.count(k),"回出てきます。")
while words.count(k) >= 1:
print(words.index(k),"番目")
words.remove(k)
elif swords.count(k) >= 1:
print("合計で",swords.count(k),"回出てきます")
while swords.count(k) >= 1:
print(swords.index(k),"番目")
swords.remove(k)
else:
print("お探しの単語は見つかりませんでした。")
text.close()
上のwordsというリストを作成する際にsentence内の1文目の文だったらwords1という名前にして文単位で何文目に検索した単語があるか調べるようなものにしたいのですが詰まってしまいました。ご教授願いたいです。よろしくお願いします。