python密码错误三次锁定(实例讲解)

yipeiwu_com6年前Python基础

程序需求:

输入用户名,密码

认证成功显示欢迎信息

输入错误三次后锁定用户

流程图:

好像画的不咋地

查看代码:

#!/usr/bin/env python
# _*_ coding:utf-8 _*_
# File_type:一个登录接口
# Author:smelond
import os

username = "smelond"#用户名
password = "qweqwe"#密码
counter = 0#计数器

#读取黑名单
file = os.path.exists("./user.txt")#检查当前目录是否有user.txt这个文件,如果有者输出True赋给file
if file == True:#判断是否有user.txt这个文件
 blacklist_file = open("user.txt", "r").read()#open()打开文件,并且用read()读取文件,然后赋给blacklist_file
 if blacklist_file == username:#检查文件里面的内容是否和我们的用户名相等
  print("Username lock. Please contact the administrator to remove the restrictions!!!")#输出错误提示
  exit()#退出程序

#登录接口
for i in range(3):
 counter += 1#对每次登录进行计数
 input_user = input("Please input username: ")
 input_pass = input("Please input password: ")
 if input_user == username and input_pass == password:
  print("Welcome login...")
  break
 else:
  print("ERROR Incorrect username or password!!!")
  continue

#写入黑名单
if counter == 3:#判断我是否输入错误三次
 print("The user name has been disabled")#提示信息
 blacklist_user = open("user.txt", "a")#以追加模式打开 (从 EOF 开始, 必要时创建新文件)
 blacklist_user.write("%s" % username)#将用户名写入黑名单
 blacklist_user.close()#使用open后一定要记得调用文件对象的close()方法

以上这篇python密码错误三次锁定(实例讲解)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Django后台admin的使用详解

Django后台admin的使用详解

简述: Django的admin可以提供一个强大的后台管理功能,可以在web界面对数据库进行操作,我们需要修改admin.py将要操作的数据表注册到后台管理中 创建数据表: 为了便于演示...

浅谈django url请求与数据库连接池的共享问题

浅谈django url请求与数据库连接池的共享问题

但凡介绍数据库连接池的文章,都会说“数据库连接是一种关键的有限的昂贵的资源,这一点在多用户的网页应用程序中体现得尤为突出。对数据库连接的管理能显著影响到整个应用程序的伸缩性和健壮性,影响...

Python中time模块与datetime模块在使用中的不同之处

Python 中提供了对时间日期的多种多样的处理方式,主要是在 time 和 datetime 这两个模块里。今天稍微梳理一下这两个模块在使用上的一些区别和联系。 time 在 Pyth...

Python 命令行非阻塞输入的小例子

 随手google咗一下,基本上都用select实现非阻塞监听,但问题是,监听的是用select之后是不能像getchar()那样,即时收到单个字符的输入,必须要等待回车。 &...

Python基础入门之seed()方法的使用

 seed() 设置生成随机数用的整数起始值。调用任何其他random模块函数之前调用这个函数。 语法 以下是seed()方法的语法: seed ( [x] ) 注意...