Python实现简单登录验证
admin
2023-07-31 02:31:32
0

本文实例为大家分享了简单的Python登录验证,供大家参考,具体内容如下

编写登录接口

要求:1、输入用户名密码

   2、认证成功后显示欢迎信息

   3、输错三次后锁定

#coding=utf-8
__author__ = \'wangwc\'

import sys,os
count = 0
locked = 0
mark_user = 0
mark_passwd = 0
#获取路径
def cur_file_dir():
  path = sys.path[0]
  if os.path.isdir(path):
    return path
  elif os.path.isfile(path):
    return os.path.dirname(path)
#print (cur_file_dir())
path = cur_file_dir()
#print(path)
path1 = path.replace(\"\\\\\",\'/\') + \'/\'
#print (path1)
#path2 = path1 + \'/\'

#循环输入
while count < 3:
  name = input(\"Username:\").strip()
  if len(name) == 0:
    print (\"Username can not be empty....\")
    continue
  key = input(\"Password:\").strip()
  if len(key) == 0:
    print(\"The password can not be empty!Try again...\")
    continue
  f = open(path1 + \"username.txt\",\"r\")
  userlist = f.readlines()
  for user in userlist:
    if user.strip() == name:
      mark_user = 1
  f.close()

  if mark_user == 1:
    f = open(path1 + \"%s_lock.txt\" %(name),\"r\")
    locked = int(f.readline().strip())
    f.close()
  else:
    print (\"Username or Passsord wrong....\")
    break
  if locked == 1:
    print(\"Sorry, the username had been locked!!!Please call the system administrator...\")
  else:
    f = open (path1 + \"%s_passwd.txt\" %(name),\"r\")
    passwd = (f.readline().strip())
    if passwd.strip() == key:
      mark_passwd = 1
    if mark_user == 1 and mark_passwd == 1:
      f = open(\"%s_count.txt\" %(name),\"w\")
      f.write(\"0\")
      f.close()
      print(\"%s,welcome BABY!\" %(name) )
      #input(\'Press Enter to exit\')
    else:
      f = open(\"%s_count.txt\" %(name),\"r\")
      count = int((f.read().strip()))
      f.close()
      count +=1
      f = open(\"%s_count.txt\" %(name),\"w\")
      f.write(str(count))
      f.close()
      print (\"Username or password wrong!And the username \'%s\' has %d more chances to retry!\" %(name,3 - count))
      if(count == 3):
        print (\"\'%s\' has been locked!!!\" %(name))
        if os.path.exists(path1 + \"%s_lock.txt\" %(name)):
          fobj = open(path1 + \"%s_lock.txt\" %(name),\"w\")
          fobj.writelines(\"1\\n\")
        else:
          print (\"Username or password wrong!\")
      continue

以上就是本文的全部内容,希望对大家的学习有所帮助。

相关内容

热门资讯

500 行 Python 代码... 语法分析器描述了一个句子的语法结构,用来帮助其他的应用进行推理。自然语言引入了很多意外的歧义,以我们...
定时清理删除C:\Progra... C:\Program Files (x86)下面很多scoped_dir开头的文件夹 写个批处理 定...
65536是2的几次方 计算2... 65536是2的16次方:65536=2⁶ 65536是256的2次方:65536=256 6553...
Mobi、epub格式电子书如... 在wps里全局设置里有一个文件关联,打开,勾选电子书文件选项就可以了。
scoped_dir32_70... 一台虚拟机C盘总是莫名奇妙的空间用完,导致很多软件没法再运行。经过仔细检查发现是C:\Program...
pycparser 是一个用... `pycparser` 是一个用 Python 编写的 C 语言解析器。它可以用来解析 C 代码并构...
小程序支付时提示:appid和... [Q]小程序支付时提示:appid和mch_id不匹配 [A]小程序和微信支付没有进行关联,访问“小...
微信小程序使用slider实现... 众所周知哈,微信小程序里面的音频播放是没有进度条的,但最近有个项目呢,客户要求音频要有进度条控制,所...
python绘图库Matplo... 本文简单介绍了Python绘图库Matplotlib的安装,简介如下: matplotlib是pyt...
Prometheus+Graf... 一,Prometheus概述 1,什么是Prometheus?Prometheus是最初在Sound...