【发布时间】:2023-01-25 01:16:27
【问题描述】:
我正在尝试编写一个登录验证器,其中用户名和密码存储在一个单独的文本文件中,我试图让文本文件加载到 Python 上,并将每个单独的单词加载到单独的变量上。
例如,给定以下文本文件:
admin, 1234
bigadmin, 5678
其中 admin 是用户名,1234 是密码,我希望将相同的详细信息加载到 Python 中,但分成两个单独的变量:
username = "admin"
password = "1234"
这是我目前正在使用的解决方案:
tempuserdatabase = open('user.txt')
userdatabase = tempuserdatabase.read().split(",")
username = input("Please enter your username:")
password = input("Please enter your password:")
if username == userdatabase[0] and password == userdatabase[1]:
print("successful")
else:
print("Please try again")
这是初始代码然而,这种方法一直没有奏效。 因此,在编写其余代码时,我发现将代码分开并存储到两个不同的变量中更方便,这样我以后就可以使用它,同时最大限度地减少行数。
【问题讨论】:
-
你不应该用逗号分割整个文件,因为文本中也有换行符。
-
您需要逐行读取文件。你可以把它变成一个字典,key = username,value = password。然后检查用户名是否存在于字典中,输入的密码是否与该值匹配。