代码之家  ›  专栏  ›  技术社区  ›  user888469

正在检查文件中与输入匹配的文本

  •  1
  • user888469  · 技术社区  · 8 年前

    username = input("enter username: ")
    search = open("username", "r")
    for line in search:
        if username in line:
            print ("correct")
        else:
            print ("incorrect")
    
    3 回复  |  直到 8 年前
        1
  •  1
  •   cs95 abhishek58g    8 年前

    你可以利用 for...else python拥有的构造。

    with open("username") as f:
        for line in f:
            if username in line:
                print("correct")
                break
        else:
            print("incorrect")
    

    else 如果程序自然退出,则会运行块,而不会中断循环。

        2
  •  0
  •   Laurent H. chthonicdaemon    8 年前

    如果你不喜欢传统 for 循环,那么我建议您使用以下解决方案:

    with open("username") as f:
        isInList = [username in line for line in f]:
        if any(isInList):
            print ("correct")
        else:
            print("incorrect")
    
        3
  •  0
  •   Jonathan Porter    8 年前

    with Here 是关于 陈述

    username = input("enter username: ")
    def read_file():
        with open("username", "r") as f:
            for line in f:
                if username in line:
                    return "correct"
            else:
                return "incorrect"
    result = read_file()
    print(result)
    # Or do whatever else you want with the result