45fan.com - 路饭网

搜索: 您的位置主页 > 网络频道 > 阅读资讯:如何通过Python实现简单登录验证?

如何通过Python实现简单登录验证?

2016-05-09 04:30:40 来源:www.45fan.com 【

如何通过Python实现简单登录验证?

本文实例为大家分享了简单的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

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


本文地址:http://www.45fan.com/a/question/48864.html
Tags: 实现 python 简单
编辑:路饭网
关于我们 | 联系我们 | 友情链接 | 网站地图 | Sitemap | App | 返回顶部