zoukankan      html  css  js  c++  java
  • python作业设计:输入用户名密码,认证成功后显示欢迎信息,输错三次后锁定

    作业需求:
    1.输入用户名密码
    2.认证成功后显示欢迎信息
    3.输错三次后锁定

    实现思路:
    1.判断用户是否在黑名单,如果在黑名单提示账号锁定。
    2.判断用户是否存在,如果不存在提示账号不存在。
    3.判断账号密码是否正确,如果正确登录进去。如果不正确有三次输入密码机会。三次全部输错,账号锁定。

     新建两个文件 account.txt和account_lock.txt ,在account中输入用户名密码 aaa 123
    1
    # Author:oliver 2 import sys,os 3 count = 0 4 name_list = [] 5 while count < 3: 6 name = input("请输入用户名:") 7 lock_file = open('account_lock.txt','r+') 8 lock_list = lock_file.readlines() 9 10 for lock_line in lock_list: 11 lock_line = lock_line.strip(' ') 12 if name == lock_line: 13 sys.exit('用户 %s 已经被锁定,请联系管理员解锁.' % name) 14 user_file = open('account.txt','r') 15 user_list = user_file.readlines() 16 for user_line in user_list: 17 (user,password) = user_line.strip(' ').split() 18 name_list.append(user_line) 19 print("--------", name_list) 20 if name == user: 21 i = 0 22 while i < 3: 23 passwd = input('请输入密码:') 24 if passwd == password: 25 print('欢迎 %s 登录' % name) 26 sys.exit(0) 27 else: 28 if i < 2: 29 print('用户 %s 密码错误,请重新输入,还有 %d 次机会.' % (name,2 - i)) 30 i += 1 31 else: 32 lock_file.write(name + ' ') 33 sys.exit('用户 %s 输错密码三次,用户将被锁定并退出,请联系管理员解锁.' % name) 34 else: 35 pass 36 else: 37 if count < 2: 38 print('用户 %s 不存在,请重新输入,还有 %d 次机会' % (name,2 - count)) 39 count += 1 40 else: 41 sys.exit('用户 %s 不存在,退出' % name) 42 43 lock_file.close() 44 user_file.close()
  • 相关阅读:
    根据svm将视频帧转换为img
    Mp4 to Img
    Python_02 基本数据类型、while循环
    Python_01 执行方式、解释器路径、编码、变量、条件语句
    数字货币,新时代货币革命的起点?
    企业区块链项目中需要避免的常见错误
    2021 年五大物联网 (IoT) 趋势
    揭开AI、机器学习和深度学习的神秘面纱
    物联网的安全性与法规的未来
    为什么分布式云是下一代云计算?Gartner分析师这样解释
  • 原文地址:https://www.cnblogs.com/oliver-blogs/p/6555534.html
Copyright © 2011-2022 走看看