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的我来说,还是非常有价值的

时间: 2024-10-06 13:46:11

Python练习-有点儿意思的用户登录的相关文章

Window上python开发--4.Django的用户登录模块User

在搭建网站和web的应用程序时,用户的登录和管理是几乎是每个网站都必备的.今天主要从一个实例了解以下django本身自带的user模块.本文并不对user进行扩展. 主要使用原生的模块. 1.User模块基础: 在使用user 之前先import到自己的iew中.相当与我们自己写好的models.只不过这个是系统提供的models. from django.contrib.auth.models import User # 导入user模块 1.1User对象属性 User 对象属性:usern

简明Python教程(四)———用户登录验证

例子: 实现目标,用Python编写用户登录验证脚本. 知识点: 1.while和if控制流 2.运算表达式 验证过程: 脚本: #!/usr/bin/env python#filename : User login authentication#import sysname = 'Tiger'passwd = '123456'counter = 0times = 3while True:                         #-----------无限循环 username = r

Python学习笔记1:用户登录

1 import getpass,sys 2 u=0 3 while u< 3: 4 user_name = input('Please input you name:') 5 # user_passwd = getpass.getpass('Please input you password:') 6 lock_file = open('C:/安装包/pycharm/day01/user_lock.txt','r+') 7 lock_line = lock_file.readlines() 8

python入门:最基本的用户登录用户登录,三次错误机会

1 #!/usr/bin/env python 2 # -*- coding:utf-8 -*- 3 #用户登录,三次错误机会 4 """ 5 导入getpass,给x赋值为1,while真,循环开始, 6 user的赋值等于用户输入的内容,pwd的赋值等于用户输入的内容并且不可见 7 如果用户输入user的赋值等于"admin"而且用户输入pwd的赋值等于"admin888" 8 打印"login successfully!

python之用户登录三次锁定

基于文件存储的用户登录程序(3次登录失败,锁定用户) 思路:1.login.user是存放用户id及密码的文件,也就是白名单:2.lock.user是存放被锁定的用户id的文档,默认为空,也就是黑名单:3.程序会先检查输入的用户名是否存在于黑名单中,如果有,则退出,并提示此用户被锁定,否则继续检查白名单:4.程序先对login.user里的合法用户id进行判断,若连续输入用户id错误达三次程序直接退出:4.程序最后会对输入的id,对应的密码进行判断,输入密码有3次机会,连续三次错误则会锁定用户i

13.Python全栈之路:用户登录程序

用户登录程序 功能介绍: 1.支持登录验证 2.支持注册新用户 #!/usr/bin env python # -*- coding:utf-8 -*- def login(user, pwd): """ 用于用户名密码的验证 :param user: 用户名 :param pwd: 密码 :return: True,用户验证成功,Flase,用户验证失败 """ with open("db.log", "r&quo

python 初学习 模拟用户登录

#!/usr/bin/env python#coding:utf-8''' 2017年8月19日 python 模拟用户登录,连续失败次数超过3次永辉名被锁定 userfile 文件保存字典 用户名,和密码 sorryname 文件保存字典 登录过的的用户名,登录成功,值为0,登录失败,值+1 当值大于等于3是,账号被锁定,无法进行登录'''import shelve# 私有属性,保存文件名__userfile = 'loginname.dat'__users = 'users'__sorryn

python自定义编写有关用户登录注册程序代码

#!/usr/bin/env python#-*- coding:utf-8 -*-import osimport json def login(): #用户注册 account_file ='d:\login.txt' locked_file ='d:\lock.txt' print("-----------------------用户注册------------------") login_name = input("请输入用户名:") login_passwd

python学习一:用户登录

一,用户登录需求: 1,用户名,密码要保存在文件中. 2,用户可以尝试登录三次,三次之后账户锁定,用户锁定信息保存在文件中,用户输入正确重置锁定信息. 程序代码: #!/usr/bin/env python# -*- coding:utf-8 -*-username = [] #-----------------------------------------------for line in open('user.txt'): line=line.replace('\n','').split(