Python验证实现登陆功能以及用户锁定(文件存储)
废话不多说先交代码(只是一个简单的验证):
#!/usr/bin/env python
#-*- coding:utf8 -*-
# Structured program ‘#’是注释
# Function definition 函数的定义都是以def开头的,与C语言一样,调用函数必须在上面
user_pwd = {'root1':'','root2':''}
count=0
num=0
list1=[]#读取被锁定的用户名
list2=[]
with open('name','r') as f:
line=f.readline()
if line !='':
list1.append(line[:-1])
print(list1)
while num<3:
user = input("请输入用户名:")
pwd = input("请输入密码:")
if user in list1:
print("您已被锁定!")
num-=1
continue
if user in user_pwd:
if user_pwd.get(user)==pwd:
print("登陆成功!")
break
else:
num+=1
print("密码输入错误!")
else:
num+=1
print("用户名输入错误!")
if num==3:
print(user,'您已被锁定!')
if user not in list1:
list1.append(user)
with open('name',"w") as f:
for i in list1:
f.writelines(i+'\n')
f.close()
print(user_pwd.get(user))
存储锁定用户名的文件名:name
大概思想:
1.用字典存储可以实现的用户名和密码
2.获取被锁定的用户名(从文件中获取)
3.把获取的str转变为list
4.登陆操作(输入用户名和用户密码)
5.判断是否用户名是否在被锁定名单中
6.根据输入信息(用户名和密码)输出提示信息
7.如果3次操作失误,锁定该用户(将该用户名存入文件中)
用到的知识点:
1.I/O输入输出
2.文件的读取和输出(f.readline()=="" 判断文件是否全部读完)记得要关闭文件流(close())
3.列表list的增加操作(list.append(str))
Python验证实现登陆功能以及用户锁定(文件存储)的更多相关文章
- Python练习-函数版-锁定三次登陆失败的用户
		代码如下: # 编辑者:闫龙 if __name__ == '__main__': import UserLoginFuncation LoclCount=[]; while True: UserNa ... 
- Python实现简单登陆验证(文件操作)
		利用python编写一个简单的登陆验证 代码主要功能: 利用Python实现简单的登陆验证,代码主要有两个部分组成: 第一部分:登陆页面,作用是实现用户名和密码的输入 利用两个输入函数input()来 ... 
- 使用Struts框架,实现用户登陆功能
		前言:本篇文章是本人这周学习的一个小结,在自我总结的同时,希望也能够给其他同学带来一点帮助.本文主要知识是参照书本上的知识点以及网上其他博客文章,在上机操练后的所得,具体源码主要来自http://bl ... 
- python3 用户登录验证的小功能
		用户登录验证,记录一下,还需要修改黑名单不合理 #!/usr/bin/env python3 ''' 需求:编写登录接口 1.输入用户名和密码 2.验证用户密码成功后输出欢迎消息 3.3次没有验证通过 ... 
- php 实现微信模拟登陆、获取用户列表及群发消息功能示例
		本文实例讲述了php实现微信模拟登陆.获取用户列表及群发消息功能.分享给大家供大家参考,具体如下: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 ... 
- python 循环和file操作实现用户密码输错三次将用户锁定
		一.需求编写登录接口1.输入用户名密码2.认证成功后显示欢迎信息3.输错三次后锁定 二.简单思路登录,三次密码输入错误锁定用户1.用户信息文件:存放用户名和密码2.黑名单文件:将输入三次错误的用户加入 ... 
- python作业(二)实现注册功能和登陆功能
		#1.实现注册功能 输入:username.passowrd,cpassowrd #最多可以输错3次 #3个都不能为空 #用户名长度最少6位, 最长20位,用户名不能重复 #密码长度最少8位,最长15 ... 
- Oracle_高级功能(5) 用户、角色、权限
		一.用户(模式)1.定义用户:对数据库的访问,需要以适当用户身份通过验证,并具有相关权限来完成一系列动作模式(schema):是某个用户所拥有的对象的集合.具有创建对象权限并创建了对象的用户称为拥有某 ... 
- python通过SSH登陆linux并操作
		使用python通过SSH登陆linux并操作 用的昨天刚接触到的库,在windows下通过paramiko来登录linux系统并执行了几个命令,基本算是初试成功,后面会接着学习的. 代码: > ... 
随机推荐
- java 序列化时排除指定属性
			java 序列化对象如何排除指定属性呢? java 中序列化对象有多种方式:struts2 ,jackson,json-lib (1)使用struts2 json插件 依赖的jar包:struts2- ... 
- LMAX系统架构
			本文转载自:LMAX系统架构 ,(非常感谢作者yfx416分享好文) 很多架构师都面临这么一个问题:如何设计一个高吞吐量,低延时的系统?面对这个问题,各位都有自己的答案.但面对这个问题,大家似乎渐渐形 ... 
- python's try&except&else
			[python's try&except&else] python的try&catch有个好用的东西,else,即try&except&else可以共用,els ... 
- FILTER:progid:DXImageTransform.Microsoft.Gradient使用
			FILTER:progid:DXImageTransform.Microsoft.Gradient使用 语法: filter:progid:DXImageTransform.Microsoft.Gra ... 
- N 秒打开一个新窗口
			<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ... 
- dedecms分页
			mshd_orderlist.php $page = isset($_REQUEST[; $count = $mshd_miaosha_member_obj -> getMemberList(t ... 
- Android 禁止屏幕旋转 & 旋转屏幕时保持Activity内容
			Android 禁止屏幕旋转 & 旋转屏幕时保持Activity内容 1.在应用中固定屏幕方向. 在AndroidManifest.xml的activity中加入: ... 
- JavaScript 对象属性作实参以及实参对象的callee属性
			参考自<<JavaScript权威指南 第6版>> /* * 将对象属性用作实参, 从而不必记住参数的顺序. */ function arraycopy(from,from_s ... 
- sizeToFit & sizeThatFits
			[sizeToFit & sizeThatFits] 1.sizeToFit,根据sizeThatFits方法返回的大小来调整receiver的大小.自定义子类不应该覆盖这个方法. 2.siz ... 
- Windows sql语句正则匹配导出数据到本地 The MySQL server is running with the --secure-file-priv option so it cannot execute this statement
			尝试使用 into outfile导出数据的时候出现错误: The MySQL server is running with the --secure-file-priv option so it c ... 
