CheckLogin
# encoding: utf-8 # Creator:耿亚月 Creation time:2017-1-1
# Modifier:耿亚月 Modification time:2017-1-2
#filename:CheckLogin import xlrd
import os
import getpass #查看账号是否注册过
def CheckRegister(username,allusers):
for user in allusers:
user = user.strip().split(',')
if username == user[0]:
time = 4
register = 'yes'
break
else:
register = 'no'
if register == 'yes':
return 'yes'
else:
return 'no' #查看账号是否被锁定过
def CheckLocked(username,lockedusers):
for user in lockedusers:
user = user.strip().split(',')
if username == user[0]:
locked = 'yes'
break
else:
locked = 'no'
if locked == 'yes':
return 'yes'
else:
return 'no' #查看是否可以登陆
def CheckLogin(username,allusers):
for user in allusers:
user = user.strip().split(',')
if username == user[0] and password == user[1]:
time = 4
login = 'yes'
break
else:
login = 'no'
if login == 'yes':
return 'yes'
else:
return 'no' # path = os.getcwd()
path = 'E:\\code\\exercise\\Day1\\CheckLogin'
AllUsers = open(path+'\\AllUsers.txt')
LockedUsers = open(path+'\\LockedUsers.txt')
allusers = AllUsers.readlines()
lockedusers = LockedUsers.readlines()
AllUsers.close()
LockedUsers.close() time = 0
pas = ''
while time < 3:
username = input('username:')
password = input('password:')
# password=getpass.getpass('password:') #查看账号是否注册过
if CheckRegister(username,allusers) == 'no':
print('there is no this username, please register in first')
break
else:
#查看账号是否被锁定过
if CheckLocked(username,lockedusers) == 'yes':
print('this ID has been locked')
break
else:
#查看是否可以登陆
if CheckLogin(username,allusers) == 'yes':
print('welcome user {name} login...'.format(name=username))
break
else:
time += 1
if time < 3:
print('Invalid username or password!')
else:
print('you put username or password over 3 time,this ID has been locked')
#将输错超过3次的用户名写入到ockedLUser文件里
LockedUsers = open(path+'\\LockedUsers.txt','a')
LockedUsers.write('\n'+username + ',' + password )
LockedUsers.close()
CheckLogin的更多相关文章
- 遇到困难 jsp代码onclick="javascript:return(checklogin());"报错
<script language="javascript"> function checklogin() { if (document.getElementById(& ...
- jsp页面onsubmit="return checklogin();"该解决方案给
选择Window->Preferences->MyEclipse->Validation 去掉方框里的对号,然后Apply 然后点击Yes->然后再点击ok->Yes,足 ...
- SSH实战 · 唯唯乐购项目(上)
前台需求分析 一:用户模块 注册 前台JS校验 使用AJAX完成对用户名(邮箱)的异步校验 后台Struts2校验 验证码 发送激活邮件 将用户信息存入到数据库 激活 点击激活邮件中的链接完成激活 根 ...
- netcore - MVC的ActionFilter的使用
经过一周的时间没有分享文章了,主要是在使用.netcore做一个小的项目,项目面向大众用户的增删改查都做的差不多了,打算本周在云服务器上部署试试,很期待,也希望上线后大家多多支持:以上纯属个人废话,来 ...
- cookie——小甜品
Cookie最早是网景公司的前雇员Lou Montulli在1993年3月的发明.Cookie英文意指饼干,不过在电脑术语中它可不像饼干那么简单.简单的说,Cookie就是服务器暂存放在你计算机上的一 ...
- shiro在springmvc里面的集成使用【转】
<dependency> <groupId>commons-collections</groupId> <artifactId>commons-coll ...
- Shiro安全框架入门篇(登录验证实例详解与源码)
转载自http://blog.csdn.net/u013142781 一.Shiro框架简单介绍 Apache Shiro是Java的一个安全框架,旨在简化身份验证和授权.Shiro在JavaSE和J ...
- 分享一个html+js+ashx+easyui+ado.net权限管理系统
EasyUI.权限管理 这是个都快被搞烂了的组合,但是easyui的确好用,权限管理在项目中的确实用.一直以来博客园里也不少朋友分享过,但是感觉好的要不没源码,要不就是过度设计写的太复杂看不懂,也懒得 ...
- 在ASP.NET Core中使用Angular2,以及与Angular2的Token base身份认证
注:下载本文提到的完整代码示例请访问:How to authorization Angular 2 app with asp.net core web api 在ASP.NET Core中使用Angu ...
随机推荐
- Windows7+32位,MongoDB安装
在网上找了各种安装MongoDB的教程,总是会出现一些bug,就自己总结了,亲测正确,MongoDB的安装再也不是一件麻烦的事情了~ 1.下载好跟自己电脑适合的安装包,选择Custom自定义安装,将安 ...
- sharepoint2013用户切换实现方式
作为一个刚学sharepoint的新人,今天在账号的切换中烦躁无比,不知道有木有人和我一样,sharepoint2013没有了切换用户,真的很不方便,当然了,也不是没有办法加上去,经过本人一个下午的研 ...
- Unbuntu下使用SVN
一.查看SVN版本 svn --version 二.查看SVN仓库 # 查看被svn仓库占用的所有端口 netstat -anp |grep svn # 查看所有端口对应的仓库 ps -ef | gr ...
- mysql安装和mysql图形界面安装以及文本文件导入mysql
本人大一大二一直使用windows系统,被微软爸爸给惯坏了,一看到cmd命令行就吓尿.现在用ubuntu,每一个操作都是语句,也是得到锻炼(个jb). ubuntu安装mysql和python代码 s ...
- 对teacher表进行增加,删除,修改
<%@page import="java.text.SimpleDateFormat"%> <%@ page language="java" ...
- HashMap原理与优化
参考文献: HashMap的工作原理 java中HashMap重要性质和优化总结 一.HashMap的基本了解 基本定义:根据源代码的描述可知,HashMap是基于哈希表的Map接口的实现,其包含了M ...
- sublimetext3备份
http://files.cnblogs.com/files/hwd13/Data.zip http://files.cnblogs.com/files/hwd13/sublime3.zip
- get传中文参数乱码解决方法
通常我们前端不同页面之间传参数用得最多的方法就是get方法:在url后面加上参数.例如:www.test.com?id=1&name=hello. 英文和字母很好处理,但是如果有的参数值为中文 ...
- web前端性能优化指南(转)
web前端性能优化指南 概述 1. PC优化手段在Mobile侧同样适用2. 在Mobile侧我们提出三秒种渲染完成首屏指标3. 基于第二点,首屏加载3秒完成或使用Loading4. 基于联通3G网络 ...
- qt开源社区学习
http://bbs.qter.org/forum.php?mod=forumdisplay&fid=52