#!/usr/bin/env python
#_*_coding:utf-8_*_
#by anthor zhangxiaoyu 2017-01-10
import getpass
import os
f = open('locked.txt','r')
lock_file = f.readlines()
f.close()
while True:
        username = raw_input("\033[32m请输入用户名:\033[0m").strip()
        password = getpass.getpass("\033[32m请输入密码:\033[0m").strip()
        for i in open('locked.txt').readlines():
                line=i.strip("\n")
                lock_file.append(line)
                if username in lock_file:
                        print("\033[41m用户%s已被锁定,请联系系统管理员解锁!\033[0m") % username
                        sys.exit()
        if username in info.keys():
                macth = 0
                user_password = info['%s' %username]
                if len(password) != 0:
                        if password == user_password:
                                print "\033[36m登录成功!欢迎%s登录系统!\033[0m" % username
                                macth = 1
                                break
                        else:
                                macth == 0
                                count -= 1
                                #print "\033[33m密码错误,还剩%s次机会,超出次数账号将被锁定!\033[0m" % count
                                if count == 0:
                                        f = open('locked.txt','a+')
                                        f.writelines('%s'%username)
                                        f.write('\n')
                                        f.close()
                                        print "\033[31m密码错误次数达到三次,该用户已被锁定!请联系系统管理员解锁
!\033[0m"
                                        sys.exit()
                                else:
                                        print "\033[33m密码错误,还剩%s次机会,超出次数账号将被锁定!\033[0m" % count
                else:
                        print "\033[31m密码不能为空!\033[0m"
        else:
                print "\033[31m用户%s不存在,请重新输入:\033[0m"%username
                continue

python_login输入三次错误密码锁定密码_密码不允许为空的更多相关文章

  1. python 循环和file操作实现用户密码输错三次将用户锁定

    一.需求编写登录接口1.输入用户名密码2.认证成功后显示欢迎信息3.输错三次后锁定 二.简单思路登录,三次密码输入错误锁定用户1.用户信息文件:存放用户名和密码2.黑名单文件:将输入三次错误的用户加入 ...

  2. python3.0 模拟用户登录,三次错误锁定

    # -*- coding:utf-8 -*- #需求模拟用户登录,超过三次错误锁定不允许登陆     count = 0   #realname passwd Real_Username = &quo ...

  3. python 3.5 用户登录验证和输入三次密码锁定用户

    #!/usr/bin/env python #encoding: utf-8 #登录程序,输入用户和密码输出欢迎信息,输入错误三次锁定用户,不让登录 import sys print (''' 欢迎登 ...

  4. C#实现的Check Password和锁定输错密码锁定账户

    C#实现的Check Password,并根据输错密码的次数分情况锁定账户:如果输入错误3次,登录账户锁定5分钟并提示X点X分后重试登录.如果5分钟后再次输入,累计输入错误密码累计达到5次.则账户会被 ...

  5. {MySQL数据库初识}一 数据库概述 二 MySQL介绍 三 MySQL的下载安装、简单应用及目录介绍 四 root用户密码设置及忘记密码的解决方案 五 修改字符集编码 六 初识sql语句

    MySQL数据库初识 MySQL数据库 本节目录 一 数据库概述 二 MySQL介绍 三 MySQL的下载安装.简单应用及目录介绍 四 root用户密码设置及忘记密码的解决方案 五 修改字符集编码 六 ...

  6. 【密码】Oracle用户密码系列

    [密码]Oracle用户密码系列 1.1  BLOG文档结构图 1.2  前言部分 1.2.1  导读和注意事项 各位技术爱好者,看完本文后,你可以掌握如下的技能,也可以学到一些其它你所不知道的知识, ...

  7. Mysql-linux下密码修改,忘记密码修改,超级管理用户修改

    未忘记密码 方法一:在mysql系统外,使用mysqladmin # mysqladmin -u root -p password "test123"Enter password: ...

  8. wordpress密码生成与登录密码验证

    一.研究wordpress时wordpess的密码密码生成与登录密码验证方式很重要 WordPress密码已成为整合的首要目标,如何征服整合,就得了解WordPress密码算法. WordPress系 ...

  9. mysql 5.7.16 忘记root 密码 如何修改root密码

    今天在电脑上安装  mysql5.7.16 (压缩包)时,在初始化data文件夹之后,没有记住密码,DOS框没有显示,没办法,为了学习一下怎么修改密码,在网上找了好多方法去解决,最终还是解决了,下面来 ...

随机推荐

  1. 老调重弹--面向对象设计原则--S.O.L.I.D设计原则

    SRP - 单一职责原则 全称:Single Responsibility Principle 定义:每一个上下文对象(类.函数.变量等等)的定义应该仅仅包含单一的职责 描述:对象提供单一职责的高度封 ...

  2. .NET MVC学习之模型绑定

    ASP.NET MVC学习之模型绑定(2)   继ASP.NET MVC学习之模型绑定继续 3.手工调用模型绑定 很多情况下我们都是通过形参的方式接收来自http流中的数据,这看似是完美的,但是缺少了 ...

  3. mvc日期控件datepick的几篇文章,日后再总结吧

    instinctcoder里有两篇,入门级的 http://instinctcoder.com/asp-net-mvc-4-jquery-datepicker/ http://instinctcode ...

  4. Effective C++(18) 让接口更容易被正确使用,不易被误用

    问题聚焦:     从这个条款开始,我们把注意力转移到软件设计和声明上来,具体的说就是,C++接口的设计和声明.     所谓软件设计,就是以一般习惯的构想开始,演变成细节的实现,最终开发针对性的特殊 ...

  5. [翻译]HBase 中的 ACID

    同前面翻译的一篇关联的,同作者的另一篇:ACID in HBase 这一篇不是单纯地描述一个问题,而是以 ACID 为主题,介绍了其在 HBase 中各个部分的体现及实现. ACID,即:原子性(At ...

  6. C# 各种相对路径

               //获取当前可执行的exe的文件名             string str1 = Process.GetCurrentProcess().MainModule.FileNa ...

  7. Dynamics CRM 2013 报表开发:安装开发工具

    最近项目需要开发报表,顺便看了下,首先需要配置开发环境.需要的工具为: 1.Business Intelligence Development Studio 可下载Sql Server 的安装包,选择 ...

  8. Python:Module Install Issues

    Python里的Module安装过程总有一些奇怪的坑,在此整理一下,以供再遇到此类问题参看 (当然如果这篇文章有人看的话,希望能对你有所帮助~) 目前碰到的主要是以下几种: 0.使用PyCharm 1 ...

  9. c#计算2个字符串的相似度

    直接来代码 public static float levenshtein(string str1, string str2) { //计算两个字符串的长度. int len1 = str1.Leng ...

  10. WCF从零学习之设计和实现服务协定2

    WCF从零学习之设计和实现服务协定(二)   在创建服务协定之前,有很多WCF术语,比如: 消息.服务.终结点 创建协定 类或接口都可以定义服务协定,建议使用接口,因为接口可以直接对服务协定建模 服务 ...