我一直在尝试创建一个程序,它接受输入并检查输入是否在文件的某些文本中。我的最终目标是创建一个用户登录GUI,但我不会在这里显示GUI的代码,因为它有很多。 我需要弄清楚如何比较输入和文件中的文本。 到目前为止,这是我的代码
def check(entry):
search = open('password.txt', 'r')
if str(entry) in str(search):
return (entry, "Word found")
else:
return entry, ("Word not found")
with open('password.txt', 'r') as text:
print (text.read())
while True:
entry=input("\nSearch for word: ")
print(check(entry))
当我运行代码时,它会说1,2,5和12都在文本中,但没有确认文本中的单词。 如果有人能提供帮助,我们将不胜感激,谢谢。
答案 0 :(得分:1)
忽略另一条评论所涵盖的安全性不好的想法,str(搜索)并不像你认为的那样工作。如果你打印它,你应该看到类似的东西:
<open file 'password.txt', mode 'r' at 0x0000000001EB2810>
是使用open函数创建的对象的描述。您需要先使用.read()方法将文件读入字符串。