'''

让用户输入用户名密码

认证成功后显示欢迎信息
用户3次认证失败后,退出程序,再次启动程序尝试登录时,还是锁定状态
'''

# !/usr/bin/env python
# -*- coding:utf-8 -*-
# Author:Hiuhung Wan '''
让用户输入用户名密码
认证成功后显示欢迎信息
用户3次认证失败后,退出程序,再次启动程序尝试登录时,还是锁定状态
''' dic_user_info = {
"usera": {"pw": "123", "err_count": 0},
"userb": {"pw": "123", "err_count": 0},
"userc": {"pw": "123", "err_count": 0},
"userd": {"pw": "123", "err_count": 0},
"usere": {"pw": "123", "err_count": 0},
}
# 创建一个黑名单文件,这里把usera列入黑名单
try:
with open('blacklist.txt', 'r') as f:
if not f.read(): # 没有内容,就写入
with open('blacklist.txt', 'a') as f:
f.write("usera,")
except FileNotFoundError as e: # 没有这个文件,就创建并写入内容
with open('blacklist.txt', 'a') as f:
f.write("usera,")
finally:
f.close() # 关闭文件。 for i in range(100):
username = input("请输入用户名(按q退出程序):")
# 按q退出程序
if username == 'q':
exit() # 用户名不在字典中
elif username not in dic_user_info:
print("无此账户,请检查您的输入")
continue # 用户在字典中,但被锁定
with open('blacklist.txt', 'r') as f:
user_locked_list = f.read().split(",")
if username in user_locked_list:
print("账户%s已被锁定。。。请更换另一个账户" % username)
f.close()
continue
f.close() # 用户在字典中,也未被锁定,则提示输入密码
password = input("请输入密码:")
if password == dic_user_info[username]["pw"]: # 密码正确
print("欢迎【%s】登录系统。。。" % username)
break
else: # 密码错
dic_user_info[username]["err_count"] += 1 # 记录错误次数
if dic_user_info[username]["err_count"] < 3:
print("密码不对,您已经输错%d次密码了,输错3次账户将被锁定" % dic_user_info[username]["err_count"])
else: # dic_user_info[username]["err_count"] >= 3: # 输错3次,录入黑名单数据库
with open('blacklist.txt', 'a') as f:
f.write("%s," % username)
f.close()
print("输错3次密码,此账户已加入黑名单")
break

  

python3 登录验证小程序,同一用户输错三次密码,锁定账户的更多相关文章

  1. python 小程序,输错三次密码锁定账户

    [root@sun ~]# cat 7.py #!/usr/bin/python # -*- coding=UTF-8 -*- usera_name = 'usera' usera_passwd = ...

  2. 简单的登录验证小程序_python

    一.要求 输入用户名密码,验证成功之后显示欢迎信息,输错三次后锁定. 程序: #!/usr/bin/env python# _*_ coding:utf-8 _*_#Author:chenxz #将黑 ...

  3. python作业设计:输入用户名密码,认证成功后显示欢迎信息,输错三次后锁定

    作业需求: 1.输入用户名密码 2.认证成功后显示欢迎信息 3.输错三次后锁定实现思路: 1.判断用户是否在黑名单,如果在黑名单提示账号锁定. 2.判断用户是否存在,如果不存在提示账号不存在. 3.判 ...

  4. python学习之最简单的用户注册及登录验证小程序

    文章都是从我的个人博客上粘贴过来的哦,更多内容请点击 http://www.iwangzheng.com 正如很多同学所知道的,楼主开始学习python了,前进的道路曲曲折折,有荆棘也有陷阱,从最简单 ...

  5. Python3.5 Day1作业:实现用户密码登录,输错三次锁定。

    作业需求: 1.输入用户名密码 2.认证成功后显示欢迎信息 3.输错三次后锁定 实现思路: 1.判断用户是否在黑名单,如果在黑名单提示账号锁定. 2.判断用户是否存在,如果不存在提示账号不存在. 3. ...

  6. python学习-实现用户密码登录,输错三次锁定

    作业需求: 输入用户名密码 认证成功后显示欢迎信息 输错三次后锁定 实现思路: 判断用户是否在黑名单,若在黑名单,则将用户锁定 判断用户是否存在,若不存在,提示用户不存在 若用户存在,判断登录密码是否 ...

  7. Python小程序之用户登陆接口

    编写登陆接口 输入用户名密码 认证成功后显示欢迎信息 输错三次后锁定 程序逻辑图: 代码: #!/usr/bin/env python #_*_ coding:UTF-8 _*_ #__author_ ...

  8. python 循环和file操作实现用户密码输错三次将用户锁定

    一.需求编写登录接口1.输入用户名密码2.认证成功后显示欢迎信息3.输错三次后锁定 二.简单思路登录,三次密码输入错误锁定用户1.用户信息文件:存放用户名和密码2.黑名单文件:将输入三次错误的用户加入 ...

  9. 微信小程序中用户登录和登录态维护

    提供用户登录以及维护用户的登录状态,是一个拥有用户系统的软件应用普遍需要做的事情.像微信这样的一个社交平台,如果做一个小程序应用,我们可能很少会去做一个完全脱离和舍弃连接用户信息的纯工具软件. 让用户 ...

随机推荐

  1. 开创学习的四核时代-iTOP-4412开发板开源硬件平台

    iTOP-4412开发板如今比較热门的开发板.笔者最近入了一套. 也推荐给初学ARM的朋友学习,4412开发板搭载三星Exynos四核处理器,配备1GB内存,4GB固态硬盘EMMC存储,兼具高速读取与 ...

  2. pat(A) 1065. A+B and C (64bit) (java大数)

    代码: import java.util.*; import java.math.*; public class Main { public static void main(String args[ ...

  3. ACM-康托展开+预处理BFS之魔板——hdu1430

    魔板 Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submis ...

  4. 值得学习的html知识

    这里零度为大家推荐几个值得学习的html知识,很有用的哦! 一.打开窗口即最大化 <script language="javaScript"> <!-- Begi ...

  5. android webview 报 [ERROR:in_process_view_renderer.cc(189)] Failed to request GL process. Deadlock likely: 0 问题

    工作中遇到 使用webview中加载含有audio标签的页面时提示[ERROR:in_process_view_renderer.cc(189)] Failed to request GL proce ...

  6. Node.js REPL(交互式解析器)

    Node.js REPL(交互式解释器) Node 自带了交互式解释器,可以执行以下任务: 读取 - 读取用户输入,解析输入了Javascript 数据结构并存储在内存中. 执行 - 执行输入的数据结 ...

  7. 搭建 Nginx 静态网站

    示例代码:/etc/nginx/nginx.conf user nginx;worker_processes auto;error_log /var/log/nginx/error.log;pid / ...

  8. C_深入(内存模型)

    01 数据类型: 为什么有数据类型? 现实生活中的数据太多而且大小形态不一. 数据类型与内存的关系: 数据类型的本质:创建变量的模具,是固定大小的别名. #include "stdio.h& ...

  9. colrm---删除文件制定列

  10. pip 更新安装失败解决方法

    python3 -m ensurepip https://stackoverflow.com/questions/28664082/python-no-module-pip-main-error-wh ...