Python实现简单登录验证


Posted in Python onApril 13, 2016

本文实例为大家分享了简单的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 相关文章推荐
python 查找文件夹下所有文件 实现代码
Jul 01 Python
Python实现查找系统盘中需要找的字符
Jul 14 Python
Python中线程的MQ消息队列实现以及消息队列的优点解析
Jun 29 Python
python利用Guetzli批量压缩图片
Mar 23 Python
Java与Python两大幸存者谁更胜一筹呢
Apr 12 Python
使用Python实现一个栈判断括号是否平衡
Aug 23 Python
详解numpy矩阵的创建与数据类型
Oct 18 Python
python实现处理mysql结果输出方式
Apr 09 Python
django模板获取list中指定索引的值方式
May 14 Python
Python+Appium实现自动抢微信红包
May 21 Python
Python可视化学习之seaborn绘制矩阵图详解
Feb 24 Python
Python中npy和mat文件的保存与读取
Apr 24 Python
Python数组定义方法
Apr 13 #Python
Python基于select实现的socket服务器
Apr 13 #Python
Python简单实现子网掩码转换的方法
Apr 13 #Python
Python多进程分块读取超大文件的方法
Apr 13 #Python
Python字符串拼接、截取及替换方法总结分析
Apr 13 #Python
Python字符串格式化输出方法分析
Apr 13 #Python
PHP网页抓取之抓取百度贴吧邮箱数据代码分享
Apr 13 #Python
You might like
PHP和JAVA中的重载(overload)和覆盖(override) 介绍
2012/03/01 PHP
codeigniter框架批量插入数据
2014/01/09 PHP
php可应用于面包屑导航的递归寻找家谱树实现方法
2015/02/02 PHP
WordPress过滤垃圾评论的几种主要方法小结
2016/07/11 PHP
PHP实现双链表删除与插入节点的方法示例
2017/11/11 PHP
让插入到 innerHTML 中的 script 跑起来的实现代码
2006/07/01 Javascript
Js点击弹出下拉菜单效果实例
2013/08/12 Javascript
javascript删除字符串最后一个字符
2014/01/14 Javascript
SyntaxHighlighter 3.0.83使用笔记
2015/01/26 Javascript
localResizeIMG先压缩后使用ajax无刷新上传(移动端)
2015/08/11 Javascript
jquery mobile开发常见问题分析
2016/01/21 Javascript
JavaScript截屏功能的实现代码
2017/07/28 Javascript
Node.js实现mysql连接池使用事务自动回收连接的方法示例
2018/02/03 Javascript
[原创]jquery判断元素内容是否为空的方法
2018/05/04 jQuery
少女风vue组件库的制作全过程
2019/05/15 Javascript
vue路由跳转传递参数的方式总结
2020/05/10 Javascript
Vue使用自定义指令实现拖拽行为实例分析
2020/06/06 Javascript
详解JavaScript类型判断的四种方法
2020/10/21 Javascript
python访问抓取网页常用命令总结
2017/04/11 Python
利用Python实现在同一网络中的本地文件共享方法
2018/06/04 Python
Python如何发布程序的详细教程
2018/10/09 Python
django 将model转换为字典的方法示例
2018/10/16 Python
python 保存float类型的小数的位数方法
2018/10/17 Python
django2.2安装错误最全的解决方案(小结)
2019/09/24 Python
pytorch masked_fill报错的解决
2020/02/18 Python
浅谈pc和移动端的响应式的使用
2019/01/03 HTML / CSS
国际奢侈品品牌童装购物网站:Designer Childrenswear
2019/05/08 全球购物
Sandro法国官网:法国成衣品牌
2019/08/28 全球购物
美体小铺波兰官方网站:The Body Shop波兰
2019/09/03 全球购物
巴西香水和化妆品购物网站:The Beauty Box
2019/09/03 全球购物
党校培训思想汇报
2013/12/30 职场文书
公司委托书格式范文
2014/04/04 职场文书
专题组织生活会方案
2014/06/15 职场文书
群众路线学习心得体会范文
2014/11/05 职场文书
英语投诉信范文
2015/07/03 职场文书
2019毕业论文致谢词
2019/06/24 职场文书