python-实现登录接口
简介:1.在本地创建两个文件,一个文件的内容是存储用户名和密码,另一个的内容是存储锁定的用户
2.登录次数限制为三次,当密码错误三次后,该账号锁定,无法再次登录
#coding=utf-8 user_info_list = []
#打开两个文件
with open('userinfo','rb') as userinfo_file,\
open('locketuser','rb') as locketuser_file:
all_userinfo_file = userinfo_file.read() #获取文件中的内容
all_userinfo_file_list = all_userinfo_file.splitlines() #把文件中的内容按行分割,放入列表中
for user_info_str in all_userinfo_file_list: #获取列表中的每个元素
user_info_tuple = tuple(user_info_str.split()) #把每个元素保存为一个数组
user_info_list.append(user_info_tuple) #把每个数组添加到一个列表中
user_info_dict = dict(user_info_list) #把列表转为一个字典 all_locketuser_file = locketuser_file.read()
user_locket_info_list = all_locketuser_file.splitlines()
with open('locketuser','ab') as locketuser_file:
while True:
user_login_flag = False #定义一个是否登录状态的,初始值未false
username_input=raw_input('请输入用户名:')
if username_input in user_locket_info_list: #先判断是否在黑名单中
print ("您已被加入黑名单,请重新输入。。。")
elif username_input in user_info_dict: #判断用户名是否在字典中
count = 3
while True:
pass_word = raw_input("请输入密码:")
if pass_word == user_info_dict.get(username_input): #通过字典,直接判断用户名和密码是否匹配
user_login_flag = True
print ("{0}登录成功,欢迎。。".format(username_input))
break #登录成功,跳出内层while循环
else:
count -= 1 #用户名和密码未匹配成功,可尝试登录次数-1
if count == 0: #可尝试登录次数为0,则退出
locketuser_file.write(username_input)
exit("{0}已被锁定".format(username_input))
print ("{0}密码错误,还剩{1}次机会。。".format(username_input,count)) #可尝试登录次数不为0,可继续尝试登录,给出剩余次数提示
if user_login_flag: #如果登录成功,则跳出外层while循环
break
else:
print ("\033[31m{0}\033[0m,此用户名不存在,请重新输入".format(username_input))
python-实现登录接口的更多相关文章
- (转)python编写登录接口
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://506554897.blog.51cto.com/2823970/1907262 ...
- Python+request 登录接口reponse的返回值token跨py文件的传递《二》
主要使用场景: 一般我们在进行接口测试时,依赖登录接口后reponse中的某些返回值,因此需要将login接口单独写一个py文件,另外的py文件均可调用login的reponse返回值使用.共用登录接 ...
- Python+request 登录接口reponse中token传递给其他接口使用,小示例介绍《一》
要求: 1.调用登录login 2.调用通过登录接口返回的reponse中的token和uuid,实现test_create_todo接口的测试 实现: 1.login登录接口的调用,直接填写对应的U ...
- Python之登录接口
要求 1.输入用户名密码2.认证成功后显示欢迎信息3.输错三次后锁定 思路 没有数据库,这里使用本地文件,一共需要两个文件: 黑名单的文件:黑名单里检测,不让登录 用户信息文件:将 ...
- 8.Python编写登录接口
1.python需安装flask,在命令行窗口输入:pip3 install flask 2.代码如下所示: from flask import Flask,request,jsonify,sessi ...
- Python实现登录接口
要求: 输入用户名和密码 认证成功,显示欢迎信息 用户名3次输入错误后,退出程序 密码3次输入错误后,锁定用户名 Readme: UserList.txt 是存放用户名和密码的文件,格式为:usern ...
- Python作业--登录接口
作业需求: 编写登陆接口 输入用户名密码 认证成功后显示欢迎信息 输错三次后锁定 实现思路: 1.从文件获取用户名密码 2.判断是否在黑名单中 3.验证用户名密码 成功:输出认证成功 错误:判断验证次 ...
- python编写登录接口
要求: 输入用户名密码 认证成功显示欢迎信息 输错三次以后锁定 代码如下: # Author:YKwhile(True): select=input('请问是注册还是登录') if selec ...
- Python 编写登录接口
流程图: 源码:
- python 测试登录接口只返回response200的问题
但是使用postman测试是有json串的 后来发现postman传参是用的raw格式,raw的格式相当于json 而这里的data其实是form-data格式,需要用json的格式
随机推荐
- 【Tensorflow】 Object_detection之配置Training Pipeline
参考:Configuring an object detection pipeline 1.config文件 配置好的config文件存放路径:object_detection/samples/con ...
- 请求网络图片缓存到本地 ,还有一些现成的图片加载框架的使用 Ace网络篇(一)
现在去买年货~~~~~~ 占坑, 现在来填坑 填完睡觉,感谢这俩月的把自己往死里逼得奋斗从JAVA什么都不懂到现在,做这些也是给在自学路上的新人(我也是菜鸟)一点点我力所能及的帮助,等我水平更高了还会 ...
- 搭建基于Ubuntu的开发环境
基于ubuntu 16.04 LTS经验 分区方案 内存:4G,硬盘:500G 分区 大小 说明 备注 / 20G 说明 swap 6G 说明 /tmp 15G 临时文件 /var 40G 可变数据目 ...
- ElasticSearch 2.1.1学习及总结
Install & Up cd elasticsearch-2.1.1/bin ./elasticsearch ./elasticsearch --cluster.name my_cluste ...
- java多线程之join方法使用
看这篇博客:http://www.cnblogs.com/skywang12345/p/3479275.html
- Linux抓包工具:tcpdump
tcpdump 是一个命令行实用工具,允许你抓取和分析经过系统的流量数据包.它通常被用作于网络故障分析工具以及安全工具. tcpdump 是一款强大的工具,支持多种选项和过滤规则,适用场景十分广泛.由 ...
- 【卷土重来之C#学习笔记】(一)c#文章导航目录
[卷土重来之C#学习笔记](一)c#文章导航目录 [卷土重来之C#学习笔记](二)c#编程概述 [卷土重来之C#学习笔记](三)类型.存储.对象 [卷土重来之C#学习笔记](四)类的基本概念 [卷土重 ...
- SpringSecurity 3.2入门(7)自定义权限控制介绍
总结Spring Security的使用方法有如下几种: 一种是全部利用配置文件,将用户.权限.资源(url)硬编码在xml文件中. 二种是用户和权限用数据库存储,而资源(url)和权限的对应关系硬编 ...
- Path类 操作文件类
// Path类 IO命名空间 静态类 不能创建对象类名. string str =@"E:\C#程序设计基础入门教程\(第十一天)\122\22\nee.txt"; ////in ...
- HDU 3397 区间覆盖,颠倒,合并(好题)
http://acm.hust.edu.cn/vjudge/problem/14689 三个操作 [a,b]覆盖为0 [a,b]覆盖为1 [a,b]颠倒每项 两个查询 [a,b]间1数量 [a,b]间 ...