python程序—用户登录

编写一个用户登录程序:

1.登录成功显示登录页面

2.登录失败,显示密码错误,并且显示错误几次

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

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

升级:

支持多用户登录

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

再次升级:

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

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

userinfo={
    'root': {'username': 'root',
              'passwd': '123',
             'count':0},
    'lee' : {'username': 'lee',
              'passwd': '10086',
             'count':0},
    'zhang':{'username': 'zhang',
              'passwd': '10010',
             'count':0}
        }

while True:
    print('=======================================')
    print('  1.创建用户    2.登录用户    3.退出   ')
    print('=======================================')
    choose=input('请输入选项:')

    if choose == '1':
        with open('C:\\Users\\lenovo\\Desktop\\b.txt', 'w', encoding='utf-8') as f:
            print('请创建 >>>>>>>>>')
            user = input('请输入用户名:').strip()
            if user in userinfo:
                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 userinfo:
                print('用户不存在!')
                continue
            if user in f.read():
                print('用户已锁定!请联系管理员!')
                continue
            if user == userinfo[user]['username']:
                pwd = input('密码:').strip()
                if pwd == userinfo[user]['passwd']:
                    print('登录成功!欢迎登录!')
                    continue
                else:
                    userinfo[user]['count']+=1
                    print('密码错误!登录失败!')
                    if userinfo[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('请输入正确选项!')

猜你喜欢

转载自www.cnblogs.com/leeeel/p/10758049.html
今日推荐