改造登录注册的程序

改造登录注册的程序:

1、账号和密码存到文件里面
2、要判断用户是否存在
3、注册的用户能够通过文件读取登录

 

注册

f = open('users.txt', 'a+', encoding='utf-8')
f.seek(0)   #将指针移到第一行
result=f.read()
user_info={}  #定义存放用户名密码的字典

for k in result.split('\n'):    #通过换行分隔所有的“用户名密码”
    user=k.strip().split(',')[0]    #通过逗号分隔用户名和密码,将用户名存入user中
    pwd= k.strip().split(',')[1]    #通过逗号分隔用户名和密码,将密码存入user中
    user_info[user]=pwd
#print(user_info) 查看是否所有用户名、密码都分离出来了

for i in range(3):
    username = input('请输入用户名:').strip()
    password = input('请输入密码:').strip()
    cpasswd = input('请再次确认密码:').strip()
    if username=='' or password=='' or cpasswd=='':
        print('用户名或密码不能为空!')
    elif username in user_info.keys():
        print('用户名已存在,请重新注册')
    elif password != cpasswd:
        print('两次输入的密码不一致,请重新注册')
    else:
        f.write('\n'+username+','+password)#写入文本方法
        print('%s,恭喜注册成功!' % username)
        break
else:
    print('注册失败,请稍后再试!')

f.close()

 

登录

import datetime   #导入时间模块
today = datetime.datetime.today()   #定义时间变量

f = open('users.txt', 'a+', encoding='utf-8')
f.seek(0)   #将指针移到第一行
result=f.read()
user_info={}  #定义存放用户名密码的字典

for k in result.split('\n'):    #通过换行分隔所有的“用户名密码”
    user=k.strip().split(',')[0]    #通过逗号分隔用户名和密码,将用户名存入user中
    pwd= k.strip().split(',')[1]    #通过逗号分隔用户名和密码,将密码存入user中
    user_info[user]=pwd
#print(user_info)
f.close()

for i in range(3):
    username = input('请输入用户名:').strip()
    password = input('请输入密码:').strip()
    if username == '' or password == '':
        print('用户名或密码不能为空')
    elif username in user_info.keys() and password==user_info.get(username):
        print( '欢迎 %s登录,今天的日期是 %s' % (username, today))
        break
    elif username not in user_info.keys():
        print('账号不存在')
    elif username in user_info.keys() and password!=user_info.get(username):
        print('密码不正确')
else:
    print('登录失败次数超过3次,不允许登录')

  

posted on 2019-09-12 11:23  cathyg1234  阅读(180)  评论(0)    收藏  举报

导航