day3学习

根据下列要求,写程序:

1、写注册的程序:
username:
password:
cpassword:
输入的账号必须是没有注册过的,两次密码必须输入一致
账号、密码的长度要在6-10之间
注册完成之后,存到文件里面

2、登录,账号密码是从文件里面取的,如果输入的账号不存在要提示。
登录的时候账号不区分大小写

程序:

1、

fw = open('注册账号库.txt', mode='a', encoding='utf-8')  # 写入的内容不会覆盖之前存在的内容
fw.close()
a=input('请输入想要注册的次数:')
for i in range(int(a)):
f = open('注册账号库.txt', encoding='utf-8') # 读文件的时候,文件必须存在
res = f.read().lower()
f.close()
d = res.strip().split('\n')
list1 = []
for j in range(len(d)):
d1 = d[j].split(',')
list1.extend(d1)
b = dict(zip(list1[0::2], list1[1::2]))
username=input('请输入注册的用户名(长度为6-10位):').lower()
if username in b:
print('用户名已经存在,请重新输入!',i+1)
continue
elif username.strip()=='':
print('输入账号不能为空!',i+1)
continue
elif len(username)<6 or len(username)>10:
print('用户名长度不符合要求,请重新输入!',i+1)
continue
else:
password=input('请输入密码(长度为6-10位):')
if password.strip()=='':
print('输入密码不能为空,请重新注册!',i+1)
continue
elif len(password)>10 or len(password)<6:
print('输入的密码长度不符合要求,请重新注册!',i+1)
else:
cpassword=input('请再次输入密码,两次密码要一致:')
if cpassword==password:
print('恭喜你注册成功!',i+1)
fw = open('注册账号库.txt', mode='a', encoding='utf-8') # 写入的内容不会覆盖之前存在的内容
fw.write('%s,%s\n'%(username,password))
fw.close()
continue
else:
print('两次密码输入不一致,请重新注册!',i+1)
continue
print('ok')
else:
print('注册次数已用完')
f = open('注册账号库.txt', encoding='utf-8') # 最后将数据库的账户打印出来
res = f.read()
f.close()
print(res)

2、
f = open('注册账号库.txt', encoding='utf-8')  # 读文件的时候,文件必须存在
res = f.read()
f.close()
d = res.strip().split('\n')
list1 = []
for j in range(len(d)):
d1 = d[j].split(',')
list1.extend(d1)
b = dict(zip(list1[0::2], list1[1::2]))
c=str(b.keys()).lower()
login_times=input('请输入允许尝试登录的次数:')
for i in range(int(login_times)):
username=input('请输入登录的用户名:')
if username.lower() in c:
password=input('请输入密码:')
if b[username]==password:
print('恭喜%s登录成功'%username)
break
else:
print('密码错误,请重新登录!',i+1)
continue
else:
print('用户名不存在,请重新登录!',i+1)
continue
else:
print('输入错误次数超限!!!')
原文地址:https://www.cnblogs.com/arraon/p/9986322.html