首页 > 编程语言 >Python 用户登录程序

Python 用户登录程序

时间:2023-06-09 17:44:57浏览次数:37  
标签:name 登录 Python lock 用户 login line

用户登录程序

任务内容

  • 1、输入用户名和密码
  • 2、认证成功后显示欢迎信息
  • 3、输错3次后锁定

流程图

代码

  • 1、主文件
import sys

lock = "lock.txt"
logfile = "login.txt"
login_info = 0
i = 0

while i < 3 and login_info== 0 :
    name = input("Please input your name: ")

    f = open(lock, "r")
    for line in f.readlines():
        # if name in line:
        if name == line.strip():
            f.close()
            sys.exit('\033[32:1m用户 %s 已经被锁定\033[0m' % name)

    password = input("Please input password: ")

    f = open(logfile, "r")
    for line in f.readlines():
        user_file, pass_file = line.split()
        if user_file == name and pass_file == password:
            print("Bingo!")
            login_info = 1
            break
    else:
        print("You name or password is errer!")
        i += 1
    f.close()
else:
    if i == 3 and login_info == 0:
        f = open(lock, "a")
        f.write(name + "\n")
        f.close()
        print('\033[32:1m用户 %s 已经被锁定\033[0m' % name)
  • 2、系统用户帐号密码信息
root rootgm
gm 12345
hlr hlr123
  • 3、当前系统被锁用户信息
gm

测试结果

  • 1、测试锁定用户能否登录系统

  • 2、测试登录3次能否登录

  • 3、测试登录1次能否登录

  • 4、测试登录3次失败后,是否会锁定帐号

标签:name,登录,Python,lock,用户,login,line
From: https://www.cnblogs.com/evescn/p/17469874.html

相关文章

  • 创建用户的一个脚本
     1viicbc.sh#!/bin/bash#创建用户icbcuseradd-m-u1001icbc#设置家目录为/data/icbcusermod-d/data/icbcicbc#将icbc用户添加到sudoers文件中"icbcALL=(ALL)NOPASSWD:ALL">>/etc/sudoers#禁用root密码登陆sed-i's/PermitRootLoginyes/PermitR......
  • python selenium 模拟实现滑块验证码
    canndy_test.pyimportcv2importnumpyasnpdefmatchImg(imgPath1,imgPath2):imgs=[]#原始图像,用于展示sou_img1=cv2.imread(imgPath1)sou_img2=cv2.imread(imgPath2)#原始图像,灰度#最小阈值100,最大阈值500img1=cv2......
  • Python程序与设计
    2-27在命令行窗口中启动的Python解释器中实现在Python自带的IDLE中实现print("Helloworld")编码规范每个import语句只导入一个模块,尽量避免一次导入多个模块不要在行尾添加分号“:”,也不要用分号将两条命令放在同一行建议每行不超过80个字符使用必要的空行可以增加代码的可读性运算......
  • python3-类的专有方法
    1、介绍专有方法,具有私有方法的特性,即只能在类中被调用,是编程语言所准备的特殊作用的方法。2、方法说明2.1__init__构造方法,在对象创建时被调用。可以在方法中声明对象属性,以及其它初始化操作2.2__del__删除方法,当对象被释放时调用,可以在其中写一些对象结束时操作的代码......
  • python010 控制多台同类型设备
    defauto_find():rm=pyvisa.ResourceManager()devices=rm.list_resources()print(devices)ins_dict={'p1':None,'p2':None,'m1':None,'m2':None}counts={'p1':0,'p2'......
  • python gunicorn详解
    Gunicorn是一个unix上被广泛使用的高性能的PythonWSGIUNIXHTTPServer。和大多数的web框架(flask)兼容,并具有实现简单,轻量级,高性能等特点。 通过Gunicorn来启动flask框架defstart_app_by_system(args,app,options):"""启动配置项:paramargs:参数......
  • Python List
    List数据类型一、创建一个列表用把逗号分隔的不同的数据项使用方括号括起来即可。如下所示:>>>name_list=["root","gm","hlr"]二、访问列表中的值使用下标索引来访问列表中的值,与字符串的索引一样,列表索引从0开始。列表可以进行截取、组合等。>>>name_list['root',......
  • python3 del关键字
    1、介绍python中,del关键字可以用于销毁对象。一方面,可以用于实现业务,比如删除集合的元素。另一方面,可以节约内存资源,提升程序效率。 classStu:def__init__(self):self.name='abc'def__del__(self):print('del')stu_1=Stu()stu_2=S......
  • mysql管理多服务器ftp虚拟用户
    前言1.FTP虚拟用户:FTP虚拟用户由ftp服务器提供,依赖于一个服务器本地账号,可以同时设置多个虚拟账号。vsftpd分辨虚拟用户,由可插入认证模块(PAM)认证,该模块的账号信息可用文件或者数据库存储。FTP虚拟用户是FTP服务器的专有用户,使用虚拟用户账号可以提供集中管理的FTP根目录,方便......
  • python基础day22 time和re模块
    time模块(跟时间打交道的模块)表示时间的三种方式1.时间戳:1970年1月1日到现在的秒数2.格式化的时间字符串:2023-01-0111:11:113.结构化时间:它是让计算机看的 导入time模块imporetimetime.time()#时间戳time.sleep(3)#睡眠3秒python中时间日期格式化符号%y......