python_login输入三次错误密码锁定密码_密码不允许为空
#!/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输入三次错误密码锁定密码_密码不允许为空的更多相关文章
- python 循环和file操作实现用户密码输错三次将用户锁定
一.需求编写登录接口1.输入用户名密码2.认证成功后显示欢迎信息3.输错三次后锁定 二.简单思路登录,三次密码输入错误锁定用户1.用户信息文件:存放用户名和密码2.黑名单文件:将输入三次错误的用户加入 ...
- python3.0 模拟用户登录,三次错误锁定
# -*- coding:utf-8 -*- #需求模拟用户登录,超过三次错误锁定不允许登陆 count = 0 #realname passwd Real_Username = &quo ...
- python 3.5 用户登录验证和输入三次密码锁定用户
#!/usr/bin/env python #encoding: utf-8 #登录程序,输入用户和密码输出欢迎信息,输入错误三次锁定用户,不让登录 import sys print (''' 欢迎登 ...
- C#实现的Check Password和锁定输错密码锁定账户
C#实现的Check Password,并根据输错密码的次数分情况锁定账户:如果输入错误3次,登录账户锁定5分钟并提示X点X分后重试登录.如果5分钟后再次输入,累计输入错误密码累计达到5次.则账户会被 ...
- {MySQL数据库初识}一 数据库概述 二 MySQL介绍 三 MySQL的下载安装、简单应用及目录介绍 四 root用户密码设置及忘记密码的解决方案 五 修改字符集编码 六 初识sql语句
MySQL数据库初识 MySQL数据库 本节目录 一 数据库概述 二 MySQL介绍 三 MySQL的下载安装.简单应用及目录介绍 四 root用户密码设置及忘记密码的解决方案 五 修改字符集编码 六 ...
- 【密码】Oracle用户密码系列
[密码]Oracle用户密码系列 1.1 BLOG文档结构图 1.2 前言部分 1.2.1 导读和注意事项 各位技术爱好者,看完本文后,你可以掌握如下的技能,也可以学到一些其它你所不知道的知识, ...
- Mysql-linux下密码修改,忘记密码修改,超级管理用户修改
未忘记密码 方法一:在mysql系统外,使用mysqladmin # mysqladmin -u root -p password "test123"Enter password: ...
- wordpress密码生成与登录密码验证
一.研究wordpress时wordpess的密码密码生成与登录密码验证方式很重要 WordPress密码已成为整合的首要目标,如何征服整合,就得了解WordPress密码算法. WordPress系 ...
- mysql 5.7.16 忘记root 密码 如何修改root密码
今天在电脑上安装 mysql5.7.16 (压缩包)时,在初始化data文件夹之后,没有记住密码,DOS框没有显示,没办法,为了学习一下怎么修改密码,在网上找了好多方法去解决,最终还是解决了,下面来 ...
随机推荐
- 老调重弹--面向对象设计原则--S.O.L.I.D设计原则
SRP - 单一职责原则 全称:Single Responsibility Principle 定义:每一个上下文对象(类.函数.变量等等)的定义应该仅仅包含单一的职责 描述:对象提供单一职责的高度封 ...
- .NET MVC学习之模型绑定
ASP.NET MVC学习之模型绑定(2) 继ASP.NET MVC学习之模型绑定继续 3.手工调用模型绑定 很多情况下我们都是通过形参的方式接收来自http流中的数据,这看似是完美的,但是缺少了 ...
- mvc日期控件datepick的几篇文章,日后再总结吧
instinctcoder里有两篇,入门级的 http://instinctcoder.com/asp-net-mvc-4-jquery-datepicker/ http://instinctcode ...
- Effective C++(18) 让接口更容易被正确使用,不易被误用
问题聚焦: 从这个条款开始,我们把注意力转移到软件设计和声明上来,具体的说就是,C++接口的设计和声明. 所谓软件设计,就是以一般习惯的构想开始,演变成细节的实现,最终开发针对性的特殊 ...
- [翻译]HBase 中的 ACID
同前面翻译的一篇关联的,同作者的另一篇:ACID in HBase 这一篇不是单纯地描述一个问题,而是以 ACID 为主题,介绍了其在 HBase 中各个部分的体现及实现. ACID,即:原子性(At ...
- C# 各种相对路径
//获取当前可执行的exe的文件名 string str1 = Process.GetCurrentProcess().MainModule.FileNa ...
- Dynamics CRM 2013 报表开发:安装开发工具
最近项目需要开发报表,顺便看了下,首先需要配置开发环境.需要的工具为: 1.Business Intelligence Development Studio 可下载Sql Server 的安装包,选择 ...
- Python:Module Install Issues
Python里的Module安装过程总有一些奇怪的坑,在此整理一下,以供再遇到此类问题参看 (当然如果这篇文章有人看的话,希望能对你有所帮助~) 目前碰到的主要是以下几种: 0.使用PyCharm 1 ...
- c#计算2个字符串的相似度
直接来代码 public static float levenshtein(string str1, string str2) { //计算两个字符串的长度. int len1 = str1.Leng ...
- WCF从零学习之设计和实现服务协定2
WCF从零学习之设计和实现服务协定(二) 在创建服务协定之前,有很多WCF术语,比如: 消息.服务.终结点 创建协定 类或接口都可以定义服务协定,建议使用接口,因为接口可以直接对服务协定建模 服务 ...