这篇文章主要为大家详细介绍了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
以上就是本文的全部内容,希望对大家的学习有所帮助。
版权声明:
本站所有资源均为站长或网友整理自互联网或站长购买自互联网,站长无法分辨资源版权出自何处,所以不承担任何版权以及其他问题带来的法律责任,如有侵权或者其他问题请联系站长删除!站长QQ754403226 谢谢。
- 上一篇: Python数组定义方法
- 下一篇: Python Web框架Tornado运行和部署