Python实现简单登录验证
更新时间:2016年04月13日 14:27:40 作者:乌邦图
这篇文章主要为大家详细介绍了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
以上就是本文的全部内容,希望对大家的学习有所帮助。
相关文章
Python greenlet和gevent使用代码示例解析
这篇文章主要介绍了Python greenlet和gevent使用代码示例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下2020-04-04http通过StreamingHttpResponse完成连续的数据传输长链接方式
这篇文章主要介绍了http通过StreamingHttpResponse完成连续的数据传输长链接方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2022-02-02Python中Scrapy+adbapi提高数据库写入效率实现
本文主要介绍了Python中Scrapy+adbapi提高数据库写入效率实现,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下2021-10-10
最新评论