第一段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. 寻找最小的k个数(四种方法)

    1 使用从大到小的优先队列保存最小的K个数,每次取出K个数之后的其余数和堆顶元素比较,如果比堆顶元素小,则将堆顶元素删除,将该元素插入 void topK(int arr[],int n,int k) ...

  2. Oracle数据库对表基本的操作--增删查改

    --向student表中加入入学时间属性,其数据类型为日期型alter table student add scome date; --删除student表中的入学时间属性alter table st ...

  3. Ubuntu下apt方式安装与更新Git

    本人使用的系统 Ubuntu 18.04.1 ,使用apt安装Git: sudo apt insatll git 安装后发现不是最新的版本,更新方法: sudo add-apt-repository ...

  4. nginx详解反向代理、负载均衡、LNMP架构上线动态网站

    简介 Nginx是俄罗斯人编写的十分轻量级的HTTP服务器,Nginx,它的发音为“engine X”,是一个高性能的HTTP和反向代理服务器,同时也是一个IMAP/POP3/SMTP 代理服务器.N ...

  5. express函数参数之next

      关于next主要从三点来进行说明:   next的作用是什么? 我们应该在何时使用next? next的内部实现机制是什么?     1.Next的作用 我们在定义express中间件函数的时候都 ...

  6. 20155203 实验二《Java面向对象程序设计》实验报告

    20155203 实验二<Java面向对象程序设计>实验报告 一.实验内容 参考http://www.cnblogs.com/rocedu/p/6371315.html#SECUNITTE ...

  7. 20155203 2016-2017-2 《Java程序设计》第1周学习总结

    20155203 2016-2017-2 <Java程序设计>第1周学习总结 学习目标 - 了解Java基础知识[第一章] Java是各应用平台的基础,Java分为三大平台:Java三大平 ...

  8. 20155212Arrays和String测试_MySort

    Arrays和String单元测试 在IDEA中以TDD的方式对String类和Arrays类进行学习 测试相关方法的正常,错误和边界情况 String类 charAt split Arrays类 s ...

  9. 20145234黄斐《Java程序设计》实验一—Java开发环境的熟悉(Linux + Eclipse)

    实验步骤 由于实验时间比较紧张,这里只有最终结果的截图 (一)命令行下Java程序开发 (二)Eclipse下Java程序开发.调试 (三)练习 实现求正整数1-N之间所有质数的功能,并进行测试 实验 ...

  10. 微服务(SOP)日志管理

    问题: 大型企业应用规模大,调试 / 解决问题由于在生产环境中不会有开发环境的调试工具,如果需要模拟还原当时的环境, 目前的解决办法是进行日志记录 日志记录的常用方式: 使用SpringAop进行切入 ...