只学习python几周,所以忽略任何丑陋的代码。
pass1 = "AJ00JJJ"
userfile = open("DATABASE.txt","r")
password = input("ENTER_MAIN:FRAME_PASSWORD: ")
if password == str(pass1):
username = input("INPUT_USERNAME: ")
for line in userfile:
if username == line:
print("WELCOME")
userfile.close()
elif username != line:
print("USER_UNKNOWN.. ADDING_TO_DATABASE")
userfile_write = open("DATABASE.txt","a")
nextLine="%s\n" % (username)
userfile_write.write(nextLine)
userfile_write.close()
所以我正在制作的程序是你输入密码,然后输入用户名,如果用户名不在文件中,则将输入的用户名添加到新行并保存。
这样可行,但它会继续添加用户名并打印'USER_UNKNOWN .. ADDING_TO_DATABASE'
任何原因?
答案 0 :(得分:0)
你编写循环来遍历文件的每一行;除非你停止循环,它将继续这样做。
我认为您要等到在之后完成循环(并且找不到名称),然后再将其添加到文件中。