day09作业01用户登录与验证
import time
LoginTime = time.asctime( time.localtime(time.time()) )
print ("time %s" % LoginTime)
count = 0
#LoginName = []
data = ("1.注册新会员","2.会员登录")
for i in range(5):
print (data)
choice = input("请选择:")
if choice.isdigit():
choice = int(choice)
with open('access_file',"r+" ,encoding="utf-8") as f:
user_list = f.read().split()
if choice == 1:
username =input("请输入用户名:")
if username.split():
for item in user_list:
if (username) in item:
print("该用户%s已存在,请注册其它用户名!" % username)
break
else:
pwd = input("请输入密码:")
with open('access_file',"a+" ,encoding="utf-8") as f_write:
f_write.write("%s\n%s\n"% (username,pwd))
print ("注册成功!")
break
elif choice ==2:
login_name = input("请输入用户名:")
if login_name.split():
with open("fail_file","r+",encoding="utf-8" ) as f_lock,open("login_log","a+")as f_log:
user_lock = f_lock.read().split()
for userLock in user_lock:
if login_name in userLock:
print("该用户已锁定,请联系管理员!")
exit()
with open("access_file","r+",encoding="utf-8" ) as f_loginName:
UserList = f_loginName.read().split()
for user_list2 in UserList:
if login_name in user_list:
for count in range(1,4):
count2 =3 - count
user_passwd = input("请输入密码:")
f_passwd = UserList[UserList.index(login_name)+1]
if user_passwd == f_passwd:
f_log.write("%s,%s登录成功!\n"%(LoginTime,login_name))
print("登录成功!")
exit()
elif (user_passwd == f_passwd) == False:
f_log.write("%s,%s密码不对,第%s次登录失败!\n"%(LoginTime,login_name,count))
if count2 > 0:
print("%s密码不对,你还有%s次登录机会!"% (login_name,count2))
else:
f_log.write("%s帐号%s登录次数超过%s次,现已锁定!"%(LoginTime,login_name,count))
print("帐号%s登录次数超过%s次,现已锁定!"%(login_name,count)) with open("fail_file","a+" ) as f_lock2:
f_lock2.write("%s\n"% login_name)
exit()
if login_name not in user_list:
print("用户%s不存在,请注册或用其它用户登录!"% login_name)
break
else:
print("请输入用户名!!!")
day09作业01用户登录与验证的更多相关文章
- springmvc拦截器实现用户登录权限验证
实现用户登录权限验证 先看一下我的项目的目录,我是在intellij idea 上开发的 1.先创建一个User类 package cn.lzc.po; public class User { pri ...
- springMVC中实现用户登录权限验证
通过上网搜资料显示,使用filter和interceptor都可以实现.不过推荐使用interceptor. 下面就使用Interceptor实现用户登录权限验证功能. 拦截器需要实现Inceptor ...
- SpringMVC+Apache Shiro+JPA(hibernate)案例教学(二)基于SpringMVC+Shiro的用户登录权限验证
序: 在上一篇中,咱们已经对于项目已经做了基本的配置,这一篇文章开始学习Shiro如何对登录进行验证. 教学: 一.Shiro配置的简要说明. 有心人可能注意到了,在上一章的applicationCo ...
- 抽屉之Tornado实战(9)--装饰器实现用户登录状态验证
当然今天讲的验证,不只Tornado会用,以后用到web框架都会用到,最常见的场景就是只有用户登陆了才能执行某些操作,所以在执行这些操作前要先做登陆状态的验证. 比如:点赞,发布,评论等需要验证,都需 ...
- ThinkPHP中:用户登录权限验证类
使用CommonAction.class.php公共类,统一判断用户是否登录 <?php //后台登录页 Class CommonAction extends Action{ //后台登录页面 ...
- 添加一个vue全局守卫,主要用于用户登录时候验证
//注册一个全局守卫,作用是在路由跳转钱,对路由进行判断,防止未登录用户跳转到其他页面 router.beforeEach((to, from, next) => { let token = l ...
- Day1课后作业:用户登录简单版
user = "gaojun"password ="123abc"for i in range(3): user = input('请输入用户名:') pass ...
- 【嵌入式linux】用户登录密码验证配置
在配置BusyBox中配置登录密码: 配置位置BusyBox Setting --> General Configuration --> Suppo ...
- Spring:验证用户登录
利用 Spring IOC 技术实现用户登录的验证机制,对用户进行登录验证. 首先利用 Spring 的自动装配模式将 User 对象注入到控制器中,然后将用户输入的用户名和密码与系统中限定的合法用户 ...
随机推荐
- mysql面试(1)
一一个 SQL 执行行行的很慢,我们要分两种情况讨论:1.大大多数情况下很正常,偶尔很慢,则有如下原因(1).数据库在刷新脏⻚页,例例如 redo log 写满了了需要同步到磁盘.(2).执行行行的时 ...
- Makefile 中引用多个 include 路径
LIB=-L/usr/informix/lib/c++ INC=-I/usr/informix/incl/c++ -I/opt/informix/incl/public default: main m ...
- Spring5参考指南: SpEL
文章目录 Bean定义中的使用 求值 支持的功能 函数 Bean引用 If-Then-Else Elvis Safe Navigation 运算符 集合选择 集合投影 表达式模板化 SpEL的全称叫做 ...
- TensorFlow框架 入门笔记
背景 略 基础 介绍 略 TensorFlow安装 link TensorFlow 主要概念 使用图(graph)来表示计算任务(执行流程). 在被称之为会话(session)的上下文(context ...
- Codeforces Round #590
题目链接:Round #590 题目答案:官方Editorial.My Solution A. Equalize Prices Again 签到题还WA了一发,向上取整有点问题: //my wrong ...
- ISA Introduction
介绍一下X86.MIPS.ARM三种指令集: 1. X86指令集 X86指令集是典型的CISC(Complex Instruction Set Computer)指令集. X86指令集外部看起来是CI ...
- String(字符串) 比较大小 如果有A+B>B+A 则A>B
题目引入: 给定N个整数,那任意顺序排列连成一个数,得到的最大的数是多少? 分析:贪心,字典序排序,都不对大小比较也不对,今天我跟别人想了很久绞尽脑汁,各种模拟都失败了.最后才发现对于俩个数a=313 ...
- P1522 牛的旅行 Cow Tours(floyd)
题目描述 农民 John的农场里有很多牧区.有的路径连接一些特定的牧区.一片所有连通的牧区称为一个牧场.但是就目前而言,你能看到至少有两个牧区通过任何路径都不连通.这样,Farmer John就有多个 ...
- SaltStack漏洞导致的挖矿排查思路
描述 SaltStack是一套C/S架构的运维工具,服务端口默认为4505/4506,两个端口如果对外网开放危害非常大,黑客利用SaltStack的远程命令执行漏洞CVE-2020-11651可以直接 ...
- 「从零单排HBase 09」Hbase的那些数据结构和算法
在之前学习MySQL的时候,我们知道存储引擎常用的索引结构有B+树索引和哈希索引. 而对HBase的学习,也离不开索引结构的学习,它使用了一种LSM树((Log-Structured Merge-Tr ...