1、写注册的程序,账号密码存到文件里面,最多输入3次 1py
input('username:')
input('passwd:')
input('cpasswd:')
#1、账号、密码和确认密码都不能为空
#2、要校验账号是否存在,不存在才可以注册
#3、两次输入密码是否一致
#4、账号不区分大小
#5、账号和密码长度要大于等于6,小于等于12
f = open('user.txt','a+',encoding='utf-8') f.seek(0) user=[] for lien in f: user.append(lien.split(',')[0]) for i in range(3): username = input('username: ').lower() passwd = input('passwd: ') cpasswd = input('cpasswd: ') if 12 < len(username) or 6 > len(username) or username.strip() == '': print("用户名长度需大于六位或小于十二位且不能为空!") elif 12 < len(passwd) or 6 > len(passwd) or passwd.strip() == '': print("密码长度需大于六位或小于十二位且不能为空!") elif passwd != cpasswd: print('两次密码输入不一致!') else: if username in user: print('用户名已存在') else: print('恭喜你,注册成功!') f = open('user.txt', 'a+', encoding='utf-8') f.write(username+','+passwd+' ') f.close() break f.close()
2、登录 2py(不包含选做)
input('username:')
input('passwd:')
#1、账号、密码不能为空
#2、要校验账号是否存在,不存在要提示
#3、最多输入3次
#4、账号不区分大小
#5、账号和密码长度要大于等于6,小于等于12
选做
#6、每次登录的时候密码错误,就这个账号的后面加一个失败次数,
#7、如果失败次数大于3次的话,提示账号已经被锁定。
f = open('user.txt', 'a+',encoding='utf-8') f.seek(0) r=(f.read()) #将分割后的文本保存成一个list f.close() userlist=r.split()#默认以空格或者换行符分隔字符串,返回值为list userdic={}#定义一个空字典,存放所有账号 for i in userlist:#循环列表,取出每一个值 username,password=i.split(',')#列表里的每一个值以“,”分隔字符串,“,”前面的是值账号,“,”后面的值是密码 userdic[username]=password #以字典的形式存起来 for a in range(3): username = input('username: ').lower() passwd = input('passwd: ') bb = username + ',' + passwd if 12 < len(username) or 6 > len(username) or username.strip() == '': print("用户名长度需大于六位或小于十二位且不能为空!") elif 12 < len(passwd) or 6 > len(passwd) or passwd.strip() == '': print("密码长度需大于六位或小于十二位且不能为空!") elif username not in userdic: print('账号不存在') elif bb in userlist: print('登录成功') break else: print('密码错误')