第一段python代码,写了一天,总算不报错了,值得纪念。

基本要求:

写一个登录界面,登录三次锁定用户

1. 包含一个用户信息文件,用户名和密码

2.黑名单文件

过程:

1.先检查是否在黑名单中,如果存在则不让登录

2.如果不在黑名单中也不在用户列表,则提示找管理员开通

3.如果在用户表中,则提示输入密码,如果超过三次输入密码,则把用户加入黑名单。

代码实现流程图:

# -*- coding:UTF-8 -*-
#author:RXS002 2016-8-1 white = open('whitelist.txt','r')
black = open('blacklist.txt','r')
passwd = open('pwdlist.txt','r')
namelist = white.read()
blacklist = black.read()
pwdlist = passwd.read() namecount = 0
pwdcount = 0
totalcount = 0 #程序开始
while True :
username = input('请输入用户名:').strip()
# print(namelist)
# print(username) if username in blacklist:
print('用户在黑名单中,请联系管理员!-----')
print('程序因为黑名单正常结束!!!')
break
elif username in namelist:
pwd = str(input('请输入用户密码:')).strip()
if pwd in namelist:
print('密码正确,欢迎登陆!')
print('程序因为密码输入正确,正常结束!!!')
break
elif pwd not in namelist:
for pwdcount in range(0, 3):
if pwd in namelist:
print('密码输入正确,请进入系统!!!')
break
else:
pwd = str(input('密码不正确,请重新输入密码:')).strip()
pwdcount += 1
print('您还有%d次输入密码的机会' % (3-int(pwdcount))) while pwdcount >= 3:
print('密码输入超过三次,账号被锁定,请联系管理员处理!')
black.close()
black1 = open('blacklist.txt','a')
black1.write(username)
black1.write('\n')
black1.close()
break
break
else:
print('用户不存在,请联系管理员创建用户!!!')
break white.close()
black.close()
passwd.close()

Python登录,输入三次密码的更多相关文章

  1. python 3.5 用户登录验证和输入三次密码锁定用户

    #!/usr/bin/env python #encoding: utf-8 #登录程序,输入用户和密码输出欢迎信息,输入错误三次锁定用户,不让登录 import sys print (''' 欢迎登 ...

  2. python应用-输入三个数,输出其最大值

    """ 输入三个数,输出其最大值 Author:罗万财 Date:2017-7-6 """ a=int(input('a=')) b=int ...

  3. python中输入三个整数x,y,z,请把这三个数由小到大输出。

    输入三个整数x,y,z,请把这三个数由小到大排序,再把数组由大到小排序,再输出最大值和最小值! #定义一个空数组 numbers = [] #循环遍历,下面的4是控制循环次数 for i in ran ...

  4. 《网络》:设置三个密码:通过console口连接设备,进入特权模式,登录Telnet

    软件:Cisco Packet Tracer Instructor 软件下载链接在上一篇文章中. 内容:通过设置三个密码,熟悉采用Telnet方式配置交换机的方法. 细节说明:计算机的IP地址和交换机 ...

  5. python入门:用户登录,三次错误机会

    #!/usr/bin/env python # -*- coding:utf-8 -*- #用户登录,三次机会重试 #主要分为两个部分,一部分是写三次循环,一部分写用户输入 #用户登录的实现,循环3次 ...

  6. python入门:最基本的用户登录用户登录,三次错误机会

    #!/usr/bin/env python # -*- coding:utf-8 -*- #用户登录,三次错误机会 """ 导入getpass,给x赋值为1,while真 ...

  7. python中的三种输入方式

    python中的三种输入方式 python2.X python2.x中以下三个函数都支持: raw_input() input() sys.stdin.readline() raw_input( )将 ...

  8. selenium(python)登录时账号密码错误提示语

    selenium(python)登录时账号密码错误提示语的获取 可以用text

  9. Python实现三次密码验证

    需求:Python实现三次密码验证,每次验证结果需要提示,三次验证不通过需要单独提示 代码如下: user = '张无忌' password = '12345678' confirm_flag = F ...

随机推荐

  1. iOS 关闭图片渲染

    在为Button 设置背景图片的时候, 会发现显示的效果和UI给的图片不一样, 往往是把图片显示成为蓝色, 这是因为在新版的iOS中, 会自动对图片渲染. 我们只要把图片渲染关掉就OK了 - (UII ...

  2. 系统构架篇之基于SSDB的二级缓存

    1.什么是ssdb 你可以把ssdb理解成redis.不同之处在于redis缓存的数据是在内存中的,所能缓存的数据大小受内存大小的限制,一般不适合缓存大量的数据.而ssdb将数据保存在磁盘中,数据量大 ...

  3. EJB到底是什么?---通俗易懂,简单明了

    EJB到底是什么?   1. 我们不禁要问,什么是"服务集群"?什么是"企业级开发"? 既然说了EJB 是为了"服务集群"和"企业 ...

  4. Oracle 体系结构五

    确定实例是否是RAC数据库的一部分:select parallel from v$instance; 确定数据库是否通过Data Guard备用数据库的保护来防止数据丢失:select protect ...

  5. 怎么在一台电脑上安装win7与centos7双系统

    对于用习惯windows系统的小伙伴们来说,好像Linux系统的命令操作感觉会比较神秘,进而有部分小伙伴就想说也学一学LInux操作系统.但是苦于资源的问题--就一台计算机,一块硬盘,担心说如果安装了 ...

  6. Web | DOM基本操作

    基本概念 文档对象模型 (DOM) 是HTML和XML文档的编程接口.它提供了对文档的结构化的表述,并定义了一种方式可以使程序对该结构进行访问,从而改变文档的结构,样式和内容.DOM 将文档解析为一个 ...

  7. 解决docker pull出现 error pulling image configuration: Get https://dseasb33srnrn.cloudfront.net······: net/http: TLS handshake timeout的问题

    [root@MyCentos7 var]# docker pull javaUsing default tag: latestTrying to pull repository docker.io/l ...

  8. 在vscode中使用webpack中安装的echarts文件失败,dom获取class名,图表不显示

    所有的东西都是新学的,所以遇到了很多问题: (1)首先,在电脑上已经安装了node的情况下, 在npm中安装echarts:npm install echarts --save mac系统在最前面加上 ...

  9. vue相关理论知识

    es6常用语法简介 es是js的规范标准 let 特点: 1.有全局和函数作用域,以及块级作用域(用{}表示块级作用域范围) 2.不会存在变量提升 3.变量不能重复声明 const 特点: 1.有块级 ...

  10. VIM - 标准模式下简单操作

    1. 概述 标准模式下, 简单操作 移动 删除 复制粘贴 收益 熟练后, 编辑文本基本不需要鼠标操作了 思路 只讲最基本的, 避免初学时的混淆 把基本操作归类了, 方便理解 2. 准备 一篇篇幅较长的 ...