首页 > 代码库 > 作业---模拟登陆

作业---模拟登陆

# 模拟登陆:
# 1. 用户输入帐号密码进行登陆
# 2. 用户信息保存在文件内
# 3. 用户密码输入错误三次后锁定用户

技术分享

user.txt文件内容:

{"alex":"zs123","zs":"zs123","ls":"zs123"}

lock.txt文件内容:

   为空

代码如下:

f = open("user.txt","r",encoding="gbk")
f1= open("lock.txt","r+",encoding="gbk")
f_str = f.readline()
f_dic = eval(f_str)
count = 0
name = input("请输入用户名:")
#如果用户名在lock文件中则提示已经锁定。退出程序。
for i in f1:
    if name in i.strip():
        print("\033[31;1m%s\033[0m 您好,账号已被锁定"%name)

        exit()

#判断是否在user中

# 判断用户名是否在字典的key键中,name_if会返回:True或者False
name_if = name in f_dic.keys()
#输入用户名不在user中
if name_if != True:
    print("\033[31;1m%s\033[0m 用户不存在"%name)
# 输入用户名在user中
if name_if == True:

    while count <3:
        passwd = input("请输入密码:")
        if passwd == f_dic[name]:
            print("\033[31;1m%s\033[0m 用户登录成功"%name)
            break
        if passwd != f_dic[name]:
            count +=1
    else:
            f1.write(name)
            f1.write("\n")
            print("\033[31;1m%s\033[0m 你的密码输入超过三,锁定帐号,退出"%name)

f.close()
f1.close()

 

作业---模拟登陆