Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/295.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在文本文件中查找名称_Python_Loops_Find_Text Files - Fatal编程技术网

Python 在文本文件中查找名称

Python 在文本文件中查找名称,python,loops,find,text-files,Python,Loops,Find,Text Files,我是python新手(我昨天开始学习),我想制作一个程序,在这个程序中,您可以输入一个名称,然后在文本文件中搜索该名称,并显示该名称是否存在。如果我运行程序并输入现有名称,它仍然显示“否”,我不知道为什么。有人能帮我吗 下面是一个执行此逻辑的小代码段: def find_name_in_file(name, filename): with open(filename, "r") as fd: for line in fd.readlines():

我是python新手(我昨天开始学习),我想制作一个程序,在这个程序中,您可以输入一个名称,然后在文本文件中搜索该名称,并显示该名称是否存在。如果我运行程序并输入现有名称,它仍然显示“否”,我不知道为什么。有人能帮我吗


下面是一个执行此逻辑的小代码段:

def find_name_in_file(name, filename):
    with open(filename, "r") as fd:
        for line in fd.readlines():
            if name in line:
                return True  # or print "YES"

    return False  # or print "NO"
您需要记住两件事:

  • 此代码不考虑大小写敏感度,如果名称等于“Mark”,并且在文件中名称为“Mark”,您将找不到它(这可以通过使用“lower”函数轻松解决)
  • 在文件包含单词“SHMark”或“MarkSH”的情况下,函数也返回true。如果您不能依赖文件的确切名称,您可以添加额外的逻辑来检查单词是否被空格包围。我会让你去弄清楚怎么做

  • 请在您的问题中添加代码,而不是作为屏幕截图。请阅读,如果你是初学者,我建议你从基于文本的程序开始。正如您在这里看到的,调试GUI应用程序要复杂得多。谢谢,我刚刚在if语句的名称和文件中添加了.lower(),现在一切正常。如果我在单词后面加字母BBE,就像你在2中说的那样。它返回false,所以这个问题不存在。很好,很高兴它为您解决了