我正在 python 中开发身份验证程序,但我遇到了数据库问题
I am developing an authentication program in python but I am having database problems
我正在开发一个登录系统,但我在用户和密码存储部分遇到了问题。我制作了一个列表,并将其外包到一个文本文件中,并将所有内容写入其中,但每次我 运行 程序再次运行时,它都会删除之前存储的所有内容。这是我写到现在的代码。还有什么我做错的地方,请告诉我,我很高兴得到更熟练的人对此的意见。
done = True
while done == True:
user = input('Create Username: ')
from pwgen import genPass
break
while done == True:
password = input('Create Password: ')
done = False
store_user = []
store_pass = []
store_userpass = []
if user in store_user:
print("That user already exists")
else:
store_user.append(user)
store_pass.append(password)
outF = open('user.txt', 'w')
outf= open('pw.txt', 'w')
for line in store_user:
outF.write(line)
outF.write('\n')
for line1 in store_pass:
outf.write(line1)
outf.write('\n')
outF.close()
outf.close()
done = False
while True:
userguess=""
passwordguess=""
key=""
while (userguess != user) and (passwordguess != password):
userguess = input('User Name: ')
passwordguess = input('Password: ')
if userguess != user:
print("Error: Unknown username.")
if userguess == user and passwordguess != password:
print("Error: Incorrect password. Try again.")
if userguess != user and passwordguess != password:
print("Error: Unknown user and password combination.")
if userguess == user and passwordguess == password:
print("Welcome,", user, ". Type lock to lock this user.")
break
while key != "lock":
key = input()
您以 write
模式(open
函数中的第二个参数)打开文件 user.txt
和 pw.txt
,每次都重新创建文件,而不是append
模式,允许您将数据附加到文件。
尝试:
outF = open('user.txt', 'a')
outf= open('pw.txt', 'a')
而不是:
outF = open('user.txt', 'w')
outf= open('pw.txt', 'w')
我正在开发一个登录系统,但我在用户和密码存储部分遇到了问题。我制作了一个列表,并将其外包到一个文本文件中,并将所有内容写入其中,但每次我 运行 程序再次运行时,它都会删除之前存储的所有内容。这是我写到现在的代码。还有什么我做错的地方,请告诉我,我很高兴得到更熟练的人对此的意见。
done = True
while done == True:
user = input('Create Username: ')
from pwgen import genPass
break
while done == True:
password = input('Create Password: ')
done = False
store_user = []
store_pass = []
store_userpass = []
if user in store_user:
print("That user already exists")
else:
store_user.append(user)
store_pass.append(password)
outF = open('user.txt', 'w')
outf= open('pw.txt', 'w')
for line in store_user:
outF.write(line)
outF.write('\n')
for line1 in store_pass:
outf.write(line1)
outf.write('\n')
outF.close()
outf.close()
done = False
while True:
userguess=""
passwordguess=""
key=""
while (userguess != user) and (passwordguess != password):
userguess = input('User Name: ')
passwordguess = input('Password: ')
if userguess != user:
print("Error: Unknown username.")
if userguess == user and passwordguess != password:
print("Error: Incorrect password. Try again.")
if userguess != user and passwordguess != password:
print("Error: Unknown user and password combination.")
if userguess == user and passwordguess == password:
print("Welcome,", user, ". Type lock to lock this user.")
break
while key != "lock":
key = input()
您以 write
模式(open
函数中的第二个参数)打开文件 user.txt
和 pw.txt
,每次都重新创建文件,而不是append
模式,允许您将数据附加到文件。
尝试:
outF = open('user.txt', 'a')
outf= open('pw.txt', 'a')
而不是:
outF = open('user.txt', 'w')
outf= open('pw.txt', 'w')