使用Python搜索文本文件中的列表

2024-06-26 10:15:05 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个程序,注册一个帐户,我现在的功能登录说,帐户工作。我已经将“用户名”和“密码”列表保存到单独的文本文件中。你知道吗

usernames = []
passwords = []
usernames.append(username)
passwords.append(password)

usernamesFile = open("usernames.txt","a")
for usernames in usernames:
    usernamesFile.write("%s\n" % usernames)
usernamesFile.close()

passwordsFile = open("passwords.txt", "a")
for passwords in passwords:
    passwordsFile.write("%s\n" % passwords)
passwordsFile.close()

while True:
    loginUsername = raw_input("Enter your username: ")
    usernamesFile = open("usernames.txt", "r")
    lines = usernamesFile.readlines() 
    if loginUsername in usernames:
        index = usernames.index(username)
        break
    else:
        print "Username not found"
        continue

我的问题是,即使我已经测试了文本文件,它保存了我注册的所有用户名,搜索仍然返回“找不到用户名”。我不是Python的专家,太好了!你知道吗


Tags: intxtforcloseusername帐户open用户名
2条回答

因为你是这样写的

usernamesFile.write("%s\n" % usernames)

"\n"添加到每个用户名的末尾,以便

if loginUsername in usernames:

总是False,除非删除"\n"或将其与loginUsername一起添加

在代码中没有使用从lines文件读取的usernames.txt来搜索其中的用户名。因此,将代码修改为:

usernames = []
passwords = []
usernames.append(username)
passwords.append(password)

usernamesFile = open("usernames.txt","a")
for usernames in usernames:
    usernamesFile.write("%s\n" % usernames)
usernamesFile.close()

passwordsFile = open("passwords.txt", "a")
for passwords in passwords:
    passwordsFile.write("%s\n" % passwords)
passwordsFile.close()

while True:
    loginUsername = raw_input("Enter your username: ")
    usernamesFile = open("usernames.txt", "r")
    lines = usernamesFile.readlines() 
    if loginUsername in lines:
        index = lines.index(username)
        break
    else:
        print "Username not found"
        continue

相关问题 更多 >