实现一个用户登陆的小程序,如果密码错误,可以重试三次,如果三次均错误,则锁定
数据库如下格式,分别用户名|密码|锁定,其中锁定字段0为正常,1为被锁定
root|admin123|0
admin|admin123|1
Cevin|admin123|0
代码如下
username = input("please input your username:") file_db = open('db','r',encoding='utf-8') file = open('db','r',encoding='utf-8') test_list = [] for line in file: f = line.strip().split('|') test_list.append(f[0]) file.close() if username in test_list: for line in file_db: list_db = line.strip().split('|') if list_db[0] == username and list_db[2] == '0': password = input("please input your password:") if list_db[1] == password: print('welcome %s login.' %(username)) break else: print("password is error") for i in range(4): if i == 3: print("%s is already locked" % (username)) file_db = open('db','r',encoding='utf-8') file_new_db = open('new-db','w',encoding='utf-8') for line in file_db: if username in line: test_list = line.strip().split('|') file_new_db.write(test_list[0]+ '|' + test_list[1] +'|' + '1' + '\n') else: file_new_db.write(line) file_new_db.close() file_db.close() break else: option = input("do you want do to tyr?") if option == 'no': print("ByeBye") break else: password = input("please input your password:") if list_db[1] == password: print("yes,you have already login success!") break else: print("password is error") elif list_db[0] == username and list_db[2] == '1': print("%s is already locked" %(username)) break else: pass else: print("%s is not register" %(username))