检查文本文件中是否存在单词python

时间:2017-05-26 16:09:37

标签: python search

我正在使用Python,并且我试图找出一个单词是否在文本文件中。我正在使用此代码,但它始终打印未找到的单词",我认为在这种情况下存在一些逻辑错误,如果您可以更正此代码,请有人请:

file = open("search.txt")
    print(file.read())
    search_word = input("enter a word you want to search in file: ")
    if(search_word == file):
        print("word found")
    else:
        print("word not found")

3 个答案:

答案 0 :(得分:4)

更好的是,您应该习惯在打开文件时使用with,这样当您完成文件时它会自动关闭。但主要的是使用in来搜索另一个字符串中的字符串。

with open('search.txt') as file:
    contents = file.read()
    search_word = input("enter a word you want to search in file: ")
    if search_word in contents:
        print ('word found')
    else:
        print ('word not found')

答案 1 :(得分:2)

以前,您正在搜索文件变量,该文件变量已打开(" search.txt")'因为你的文件中没有,所以你找不到单词。

您还询问搜索词是否完全匹配'打开(" search.txt")'因为==。不要使用==,在"中使用"代替。尝试:

EventEmitter

答案 2 :(得分:1)

其他选择,您可以在阅读文件时search

search_word = input("enter a word you want to search in file: ")

if search_word in open('search.txt').read():
    print("word found")
else:
    print("word not found")

要减轻可能的内存问题,请使用此处related question

所述的mmap.mmap()