python3.0 模拟用户登录,三次错误锁定的实例


Posted in Python onNovember 02, 2017

python3.0 模拟用户登录,三次错误锁定的实例

实例如下所示:

# -*- coding:utf-8 -*-
#需求模拟用户登录,超过三次错误锁定不允许登陆
 
 
count = 0
 
#realname passwd
Real_Username = "test"
Real_Password = "test"
 
#读取黑名单的内容
f = open('black_user','r')
lock_file = f.read()
f.close()
 
Username = input('请输入用户名:')
 
#判断输入用户是否在黑名单内,如果在则不允许输入密码
for i in range(1):
 if lock_file == Username:
  print('对不起,您的用户已锁定,暂时不允许使用!')
  exit()
 else:
  continue
 
#尝试输入密码并对输入次数进行计数
for i in range(3):
 Password = input("请输入密码:")
 if Username == Real_Username and Password == Real_Password:
  print("登录成功")
  break
 else:
  print("登录失败")
 count += 1
 
#如果输入三次错误密码,则提示用户名锁定,并将用户名拉黑
if count == 3:
 print("对不起,您输入的密码错误次数已经达到3次,您的用户名将被锁定")
 f = open("black_user","w")
 f.write("%s"%Username)
 f.close()

python基础-实现用户密码登录,输错三次锁定

作业需求:

1.输入用户名密码

2.认证成功后显示欢迎信息

3.输错三次后锁定

实现思路:

1.判断用户是否在黑名单,如果在黑名单提示账号锁定。

2.判断用户是否存在,如果不存在提示账号不存在。

3.判断账号密码是否正确,如果正确登录进去。如果不正确有三次输入密码机会。三次全部输错,账号锁定。

#!/usr/bin/env python
#_*_conding:utf-8_*_
 
count = 0  #计数器
username = "aaa" #登录用户名
userpassword = "asd" #登录密码
 
#读取黑名单用户
f = open("aaa.txt","r")
file_list = f.readlines()
f.close()
 
lock = []
name = input("登录用户名:")
 
#判断用户是否在黑名单
for i in file_list:
  line=i.strip("\n")
  lock.append(line)
if name in lock:
  print ("您的账号已锁定,请联系管理员。")
else:
#如果用户没有在黑名单,判断用户是否存在。
 if name == username:
#如果密码连续输错三次,锁定账号。
   while count <3:
     password = input("登录密码:")
     if name == username and password == userpassword:
        print("欢迎,%s" %name )
        break
     else:
        print("账号密码不匹配")
        count += 1
   else:
    print ("对不起,您的账号连续输错三次账号已锁定,请联系管理员。")
    f=open("aaa.txt","w+")
    li=['%s'%username]
    f.writelines(li)
    f.close()
 else:
   print ("用户名不存在,请输入正确的用户名。")

以上这篇python3.0 模拟用户登录,三次错误锁定的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python端口扫描系统实现方法
Nov 19 Python
python numpy数组的索引和切片的操作方法
Oct 20 Python
python用match()函数爬数据方法详解
Jul 23 Python
查看Python依赖包及其版本号信息的方法
Aug 13 Python
python中字典按键或键值排序的实现代码
Aug 27 Python
python nmap实现端口扫描器教程
May 28 Python
python中urllib.request和requests的使用及区别详解
May 05 Python
Python 开发工具通过 agent 代理使用的方法
Sep 27 Python
详解Python利用configparser对配置文件进行读写操作
Nov 03 Python
利用python爬取有道词典的方法
Dec 08 Python
Python3爬虫ChromeDriver的安装实例
Feb 06 Python
python 使用tkinter与messagebox写界面和弹窗
Mar 20 Python
Python安装Numpy和matplotlib的方法(推荐)
Nov 02 #Python
Python 多进程并发操作中进程池Pool的实例
Nov 01 #Python
python 3.0 模拟用户登录功能并实现三次错误锁定
Nov 01 #Python
python 简单搭建阻塞式单进程,多进程,多线程服务的实例
Nov 01 #Python
Python编程实现双链表,栈,队列及二叉树的方法示例
Nov 01 #Python
Python栈算法的实现与简单应用示例
Nov 01 #Python
Python scikit-learn 做线性回归的示例代码
Nov 01 #Python
You might like
利用PHP动态生成VRML网页
2006/10/09 PHP
PHP删除数组中的特定元素的代码
2012/06/28 PHP
Laravel修改验证提示信息为中文的示例
2019/10/23 PHP
javascript事件模型代码
2007/07/01 Javascript
Js callBack 返回前一页的js方法
2008/11/30 Javascript
如何在父窗口中得知window.open()出的子窗口关闭事件
2013/10/15 Javascript
javascript实现文本域写入字符时限定字数
2014/02/12 Javascript
Javascript实现Web颜色值转换
2015/02/05 Javascript
JavaScript模拟实现继承的方法
2015/03/30 Javascript
js实现表单Radio切换效果的方法
2015/08/17 Javascript
js多功能分页组件layPage使用方法详解
2016/05/19 Javascript
bootstrapvalidator之API学习教程
2017/06/29 Javascript
js原生代码实现轮播图的实例讲解
2017/07/28 Javascript
javascript填充默认头像方法
2018/02/22 Javascript
图文讲解vue的v-if使用方法
2019/02/11 Javascript
validform表单验证的实现方法
2019/03/08 Javascript
vue点击自增和求和的实例代码
2019/11/06 Javascript
JavaScript数组排序的六种常见算法总结
2020/08/18 Javascript
Vue +WebSocket + WaveSurferJS 实现H5聊天对话交互的实例
2020/11/18 Vue.js
Python生成数字图片代码分享
2017/10/31 Python
Python简单实现查找一个字符串中最长不重复子串的方法
2018/03/26 Python
windows 10 设定计划任务自动执行 python 脚本的方法
2019/09/11 Python
详解如何用python实现一个简单下载器的服务端和客户端
2019/10/28 Python
Python Json数据文件操作原理解析
2020/05/09 Python
Python实现EM算法实例代码
2020/10/04 Python
KLOOK客路:发现更好玩的世界,预订独一无二的旅行体验
2016/12/16 全球购物
英国最好的温室之家:Greenhouses Direct
2019/07/13 全球购物
Ben Sherman官方网站:英国男装品牌
2019/10/22 全球购物
Perfume’s Club澳大利亚官网:西班牙领先的在线美容店
2021/02/01 全球购物
什么是servlet链?
2014/07/13 面试题
高一自我鉴定
2013/12/17 职场文书
给幼儿园老师的表扬信
2014/01/19 职场文书
《跨越海峡的生命桥》教学反思
2014/02/24 职场文书
群众路线剖析材料
2014/09/30 职场文书
风之谷观后感
2015/06/11 职场文书
navicat 连接Ubuntu虚拟机的mysql的操作方法
2022/04/02 MySQL