如何让我的代码只测试文本文件中的一行?

时间:2017-04-01 16:41:31

标签: python login system

您好我正在寻求帮助。因此,对于某些背景,此代码将用作个人使用的登录系统。我试图让它只检查一行,所以我可以得到它来验证用户名是否正确和密码。我该怎么做?

user = input("please Enter your full name: ")
if os.path.isfile(user + ".txt"):
    with open(user + ".txt", "r")

        print("------------------------")
        Username = input("|Username: ")
        password = getpass.getpass("|Password: ")
        print("------------------------")

1 个答案:

答案 0 :(得分:0)

好的,如果你坚持以不安全的方式做这件事,那么我猜你只有一个带有明文用户名和密码的文件。我知道也许你对Python了解所以一种不安全的方法在某种程度上是可以接受的:P。以下示例,

炉腹

密码

(在文件中,如上所示,行之间没有间隙,它们将在连续的行上)

如果没有,那么我建议你这样做,因为这是下面的代码部分所期望的。

submittedUsername = input("Please enter username: ")
submittedPassword = input("Please enter password: ")
credentialsFile = open("credentials.txt", "r")
credentials = credentialsFile.readlines()
username = credentials[0].rstrip("\n\r")
password = credentials[1].rstrip("\n\r")
if submittedUsername == username:
    if submittedPassword == password:
        print("Login verified!")
        #both username and password verified here, do what you want
    else:
        #password incorrect
        print("Login invalid")
else:
    #username incorrect but whether you want to specify what is wrong is up to you
    print("Login invalid")

如果您想要解释任何部分,请询问。希望有所帮助。