登录程序优化
需求如下:
1、用户的账号密码以(用户名,密码)的格式存放在userInfo文件中,可存多个用户的
2、在控制台输入账号密码
3、若输入正确,会弹出“登陆成功”的提示
4、若输入错误,需要重新输入,输入超过三次,账号会被锁定
优化前代码:
flag1 = True input_count = 1 while flag1: user_name = input("请输入用户名:").strip() password = input("请输入密码:").strip() if user_name == '': print("用户名不能为空,请重新输入") elif password == '': print("密码不能为空,请重新输入") else: input_user = user_name+','+password users = [] f = open('userInfo',mode='r',encoding='utf8') for line in f : users.append(line.strip()) f.close() while input_count <= 3: # 这个while循环其实是多余的 if input_user in users: print("登陆成功!") flag1 = False else: if input_count == 3: print("账户已被锁定,如有疑问请联系管理员!") flag1 = False else: print("用户名或密码不正确,你还可输入 %d次"%(3-input_count)) input_count += 1 break
优化后代码:
flag1 = True input_count = 1 while flag1: user_name = input("请输入用户名:").strip() password = input("请输入密码:").strip() if user_name == '': print("用户名不能为空,请重新输入") elif password == '': print("密码不能为空,请重新输入") else: input_user = user_name+','+password users = [] f = open('userInfo',mode='r',encoding='utf8') for line in f : users.append(line.strip()) f.close() if input_user in users: print("登陆成功!") flag1 = False else: if input_count == 3: print("账户已被锁定,如有疑问请联系管理员!") flag1 = False else: print("用户名或密码不正确,你还可输入 %d次"%(3-input_count)) input_count += 1