首页 > 代码库 > Python练习-有点儿意思的用户登录

Python练习-有点儿意思的用户登录

Alex大神的需求(说实话他需求真特么多,真难满足他):

编写一个用户登陆接口:输入用户名密码,认证成功后显示欢迎信息,输错三次后锁定;

# 编辑者:闫龙
#用户登录功能输入3次以上会被锁定;为了方便输入和测试,将密文密码改为明文
import os;
import getpass;
# 判断文件是否存在;
if (os.path.exists("lock.txt") == False):
    # 如果不存在则创建lock.txt;
    open("lock.txt", "wb+");
print("欢迎使用本系统,请登录:");
# 读取文件中已被锁定的用户名,以列表方式保存,便于匹配用户的输入;
LockUser=open("lock.txt", "r").readline().split(;)
#用户每输入一次用户名,再此列表中出现一次
UserLoginList = [];
while True:
    username = input("用户名:");
    passwd = input("密码:")#getpass.getpass("密  码:");
    #用户输入后保存在UserLoginList列表类型中;
    UserLoginList.append(username);
    #如果输入正确
    if(username == "long" and passwd == "123"):
        print("欢迎"+username+"使用本系统!");
        UserLoginList.remove(username);
        break;
    #如果LockUser中出现过该用户则直接通知已锁定并退出
    if(LockUser.count(username) > 0):
        print("用户已锁定,请联系管理员");
        break;
        # 如果输入三次重复的用户名未登陆成功;
    if (UserLoginList.count(username) >= 3):
        print("由于您尝试用户‘" + username + "’的次数太多,用户已锁定,请联系管理员");
        # 向lock.txt文件中追加此用户名;
        open("lock.txt", "a").write(username + ";");
        break;
    else:
        print("您输入的用户名或密码错误,请重新输入");

这个程序对于一个初始Python的我来说,还是非常有价值的

Python练习-有点儿意思的用户登录