打印单词位于哪个列表或字典中

Printing in which list or dictionary the word is located in

我有一个包含以下内容的文本文件:

<NEW DOCUMENT>
Look on the bright 
side of Life.
<NEW DOCUMENT>
look on the very, dark
side of the Moon
<NEW DOCUMENT>
is there life
on the moon

我正在尝试创建一个 python 脚本,可以将其拆分为多个 "documents" 然后搜索它们,如果我搜索单词 moon 那么它应该会告诉我它已找到在第二和第三个文件中。在寻求帮助后,我设法让它打印出它在其中找到单词的行,但它没有打印出它所在的文档(我正在尝试实现它,但它对我来说效果不佳)。

非常感谢任何帮助!

目前的代码如下:

def main():
    docs=[]
    with open("ap_docs2.txt") as f:
        lines = f.read().split("<NEW DOCUMENT>")[1:]
        for x in lines:
            docs.append(x.strip())
        numOfDocs=len(docs)
        docs1 = map(str.lower, docs) ## Convert list to lower case for search
        print (docs)
        print("Number of Documents:",numOfDocs)

    search = input("Enter search words: ")
    for x in docs1:
        if search in x:
            print ("{} found in:\t {}".format(search,x))

main()

这是否符合您的要求?我只是在文档中打印匹配行的索引。

def main():
    docs=[]
    with open("ap_docs2.txt") as f:
        lines = f.read().split("<NEW DOCUMENT>")[1:]
        for x in lines:
            docs.append(x.strip().lower())
        numOfDocs=len(docs)
        print (docs)
        print("Number of Documents:",numOfDocs)

    search = input("Enter search words: ")
    for x in docs:
        if search in x:
            print('Found in document %d' % (docs.index(x) + 1))

main()