python程序—用户登陆

编写一个用户登陆程序:spa

1.登陆成功显示登陆页面code

2.登陆失败,显示密码错误,而且显示错误几回blog

3.登陆失败三次,退出程序ip

username= 'root' passwd= '123' count=0 print('请登陆 >>>>>>>>>') while True: user=input('登陆名:') pwd=input('密码:') if user == username and pwd == passwd: print('登陆成功!欢迎登陆!') break
    else: count +=1 print('密码错误!登陆失败!',count) if count ==3: break

升级:utf-8

支持多用户登陆input

userinfo={ 'root': {'username': 'root', 'passwd': '123'}, 'lee' : {'username': 'lee', 'passwd': '10086'}, 'zhang':{'username': 'zhang', 'passwd': '10010'} } count=0 print('请登陆 >>>>>>>>>') while True: user=input('登陆名:').strip() pwd=input('密码:').strip() if user == userinfo[user]['username'] and pwd == userinfo[user]['passwd']: print('登陆成功!欢迎登陆!') break
    else: count +=1 print('密码错误!登陆失败!') if count ==3: break

再次升级:it

1.支持建立用户,并将用户信息写入文件class

2.同一用户因密码错误而登陆失败三次后,提示用户锁定import

import re # 导入re模块,进行正则匹配 userinfo1 = {} g = open('C:\\Users\\lenovo\\Desktop\\b.txt', 'r', encoding='utf-8') for i in g: user = re.compile('(.*?) (.*?) ').search(i).group(1) pwd = re.compile('(.*?) (.*?) ').search(i).group(2) count = re.compile('(.*?) (.*?) (.*)').search(i).group(3) userinfo1[user] = {'username': user, 'passwd': pwd, 'count': int(count)} g.close() while True: print('=======================================') print(' 1.建立用户 2.登陆用户 3.退出 ') print('=======================================') choose=input('请输入选项:') if choose == '1': userinfo = {} with open('C:\\Users\\lenovo\\Desktop\\b.txt', 'w', encoding='utf-8') as f: print('请建立 >>>>>>>>>') userinfo1 = {} for i in open('C:\\Users\\lenovo\\Desktop\\b.txt', 'r', encoding='utf-8'): user = re.compile('(.*?) (.*?) ').search(i).group(1) pwd = re.compile('(.*?) (.*?) ').search(i).group(2) userinfo1[user] = {'username': user, 'passwd': pwd, 'count': 0} user = input('请输入用户名:').strip() if user in userinfo1.keys(): print('用户名已经存在!') else: pwd = input('请输入密码:').strip() userinfo[user] = {'username': user, 'passwd': pwd, 'count': 0} for i in userinfo.values(): j=0
                for j in i.values(): f.write('%s ' % str(j)) f.write('\n') elif choose == '2': print('请登陆 >>>>>>>>>') with open('C:\\Users\\lenovo\\Desktop\\a.txt','r',encoding='utf-8') as f: user = input('登陆名:').strip() if user not in userinfo1: print('用户不存在!') continue
            if user in f.read(): print(f.read()) print('用户已锁定!请联系管理员!') continue
            if user == userinfo1[user]['username']: pwd = input('密码:').strip() if pwd == userinfo1[user]['passwd']: print('登陆成功!欢迎登陆!') continue
                else: userinfo1[user]['count']+=1 print('密码错误!登陆失败!') if userinfo1[user]['count']==3: with open('C:\\Users\\lenovo\\Desktop\\a.txt','a',encoding='utf-8') as f: f.write('%s \n' % user) elif choose == '3': break

    else: print('请输入正确选项!')
相关文章
相关标签/搜索