内容字号:默认大号超大号

段落设置:段首缩进取消段首缩进

字体设置:切换到微软雅黑切换到宋体

Python实现新用户注册及登陆认证

2019-01-06 11:22 出处:清屏网 人气: 评论(0

一、注册账号需要实现的功能

1、输入:用户名,密码,密码确认

2、限制1:输入的账号和密码不能为空

3、限制2:两次输入密码必须一致

4、限制3:用户名不能重复

5、限制4:错误次数为4次

6、用字典保存,格式如下;其中,只需要输入username和passwd,新注册用户role默认都为1

{  '张三': {'passwd': '123', 'role': '1'}, '李四': {'passwd': 'abc', 'role': '2'}  }


注册部分代码:
-------------------------------------------------------------------------------------------
import json
import ast

f= open("users.txt", 'r+')
users = eval(f.read()) #f.read()读取的是字符串,用eval()将字符串转化为字典
for i in range(4):
    name = input('请输入你要注册用户名: ')
    passwd = input('请输入你要注册密码: ')
    c_passwd = input('请再次确认密码: ')
    if len(name.strip()) != 0 and name not in users and len(passwd.strip()) != 0 and passwd == c_passwd:
        users[name]= {'passwd':passwd, 'role':1} #往字典中插入新数据
        f.seek(0)
        f.truncate()  #清空文件内容
        f.writelines(str(users)) #将字典写入文件
        print('恭喜,注册成功')
        f.close()
        break
    elif len(name.strip()) == 0:
        print('用户名不能为空,请重新输入。还可输入%d次' %(3-i))
    elif name in users:
        print('用户名重复,请重新输入。还可输入%d次' %(3-i))
    elif len(passwd.strip()) == 0:
        print('密码不能为空,请重新输入。还可输入%d次' %(3-i))
    elif c_passwd != passwd:
        print('两次输入的密码不一致,请重新输入。还可输入%d次' %(3-i))


print('___________请尝试登陆___________')

-------------------------------------------------------------------------------------------

登陆部分代码:
-------------------------------------------------------------------------------------------
count = 0
error_count = 1
while  (count < 3):
 Login_name= input('请输入您的用户名:')
 Login_passwd = input('请输入您的密码:')
 f1 = open("users.txt", 'r+', encoding='utf8')
 Login_users = eval(f1.read())
 if  Login_name in   Login_users   and   Login_passwd  ==   Login_users[Login_name]['passwd'] :
     print("login ok")
     break
 else :

    print("User password authentication error 还有%d次机会" %(3-count1))
    error_count = error_count + 1

 count = count + 1
分享给小伙伴们:
本文标签: Python

相关文章

发表评论愿您的每句评论,都能给大家的生活添色彩,带来共鸣,带来思索,带来快乐。

CopyRight © 2015-2016 QingPingShan.com , All Rights Reserved.