用Python编写一个简单的登陆接口
要求
1,输入用户名密码
2,认证成功后显示欢迎信息
3,输错3次后用户锁定
blacklist.txt内容
zhaoyi
qianer
sunan
lisi userlist.txt内容
zhouwu 123456
wuliu 123456
zhengqi 123456
www 123456 # -*- coding:utf-8 -*-
import os,sys
for i in range(3):                              #进行3次循环
blacklist = open(r"C:\Users\Pc4\Desktop\blacklist.txt", 'r')   #打开文件
name = input('plese input your name:')
list = blacklist.readlines()                      #把文件内容读取成为列表形式
for lock in list:
lock = lock.strip('\n')                      #去掉字符串后面的回车
if name==lock:                            #判断输入的名字是否在黑名单
print('The user is locked')
blacklist.close()                        #关闭黑名单文件
sys.exit()                           #退出程序
blacklist.close()                             #如果输入的用户名不在黑名单,关闭文件
userlist = open(r'C:\Users\Pc4\Desktop\userlist.txt', 'r')     #打开用户文件
user_list = userlist.readlines()                    #把用户读取到列表
dict_usermane = {}                            #创建一个空的字典
for user in user_list:
(username,password) =user.strip().split()       #把列表的内容进行切片
dict_usermane[username]=password       #把用户名和对应的密码存到字典
username_list = dict_usermane.keys()       #把字典中的用户名取出,做成一个单独的列表
while name in username_list:                      #判断输入的用户名是否在用户名列表
passwd = input('plese input your password:')
if passwd == dict_usermane.get(name):               #判断用户名对应的密码
print('welcome to this system!')
sys.exit()
else:
print('your password is wrong.')
i=i+1
if i == 3:
blacklist = open("C:/Users/Pc4/Desktop/blacklist.txt",'a+')
blacklist.write(name + '\n')       #当出入三次错误密码后把用户添加到黑名单
blacklist.close() userlist = open("C:/Users/Pc4/Desktop/userlist.txt", 'r')
lines = userlist.readlines()
newuserlist = open("C:/Users/Pc4/Desktop/userlist.txt", 'w+')
for line in lines:
if name in line:
continue
newuserlist.write(line)              #把输错的用户从用户文件中删除
userlist.close()
newuserlist.close() sys.exit(1)
else:
print('don\'t have the user')                   #如果输错用户名显示没有用户

python 作业 编写登陆接口的更多相关文章

  1. python之编写登陆接口(第一天)

    作业:编写登陆接口 输入用户名密码 认证成功后显示欢迎信息 输错三次后锁定 针对此实例写了有二种类型的脚本,略有不同,具体如下: 帐号文件account.txt内容如下: sam 123 david ...

  2. Python之编写登陆接口

    1.输入用户名密码: 2.认证成功后显示欢迎信息: 3.错误三次后,账号被锁定. 账号文件:user.txt 锁定文件:locked.txt 流程图如下: # -*- coding:utf-8 -*- ...

  3. python 之编写登陆接口

    基础需求: 让用户输入用户名密码 认证成功后显示欢迎信息 输错三次后退出程序 升级需求: 可以支持多个用户登录 (提示,通过列表存多个账户信息) 用户3次认证失败后,退出程序,再次启动程序尝试登录时, ...

  4. Python学习之编写登陆接口(Day1,作业一)

    作业一:编写登陆接口 输入用户名密码 认证成功后显示欢迎信息 输错三次后锁定(下次登陆还是锁定) 知识点:while循环,for循环,文件操作,if判断,列表操作 思路: 1.登陆,三次登陆失败,锁定 ...

  5. day1作业:编写登陆接口

    作业一:编写登陆接口 1.输入用户名和密码 2.认证成功后显示欢迎信息 3.输错三次后锁定 思路:要求是编写登陆接口,那么要有一个存放用户信息的模块:三次后锁定,要有一个存放锁定用户信息的模块:我们知 ...

  6. day1作业一:编写登陆接口

    作业一:编写登陆接口 1.输入用户名和密码 2.认证成功后显示欢迎信息 3.输错三次后锁定 Readme: (1)提示用户输入用户名: (2)用户名验证,验证是否已经锁定: (3)是否锁定:已锁定告诉 ...

  7. 使用 Python 编写登陆接口

    # 使用 Python 编写登陆接口# Create Date: 2017.10.31 Tuesday# Author: Eric Zhao# -*- coding:utf-8 -*-'''编写登陆接 ...

  8. Python学习第一天-编写登陆接口

    编写登陆接口 输入用户名密码 认证成功后显示欢迎信息 输错三次后锁定 帐号文件user.txt内容如下: qaz 123qwe 12345qweqwr 12321424...... 锁文件user_l ...

  9. Python之编写登录接口

    作业:编写登陆接口 输入用户名密码 认证成功后显示欢迎信息 输错三次后锁定 帐号文件account.txt内容如下: liuyueming 123zhangsan 123lisi 123 锁文件acc ...

随机推荐

  1. zip详解

    http://www.360doc.com/content/06/0915/14/10610_208147.shtml

  2. gitignore忽略规则

    我们用git提交本地代码时,有些文件或日志是不需要提交的,这个时候可以用.gitignore来解决这个问题: 首先,我们需要创建一个.gitignore文件,用命令输入 touch .gitignor ...

  3. 20162311 实验三 敏捷开发与XP实践 实验报告

    20162311 实验三 敏捷开发与XP实践 实验报告 实验内容 一.研究学习IDEA中的Code菜单 使用Code ->Reformate Code功能将以下代码格式化 public clas ...

  4. alpha-咸鱼冲刺day3

    一,合照 emmmmm.自然还是没有的. 二,项目燃尽图 三,项目进展 今天把数据库的表给建好了,学长那边把登陆跟注册页面也做好了(纯页面,html5+css的那种) 四,问题困难 日常啥都不会,百度 ...

  5. 敏捷冲刺每日报告——Day1

    1.情况简述 Alpha阶段第一次Scrum Meeting 敏捷开发起止时间 2017.10.25 00:00 -- 2017.10.26 00:00 讨论时间地点 2017.10.25晚9:30, ...

  6. Beta阶段敏捷冲刺报告-DAY2

    Beta阶段敏捷冲刺报告-DAY2 Scrum Meeting 敏捷开发日期 2017.11.3 会议时间 13:00 会议地点 微信群 参会人员 项目组全体成员 会议内容 打包问题修复, 爬虫优化, ...

  7. Linux下I/O多路转接之select --fd_set

    fd_set 你终于还是来了,能看到这个标题进来的,我想,你一定是和我遇到了一样的问题,一样的疑惑,接下来几个小时,我一定竭尽全力,写出我想说的,希望也正是你所需要的: 关于Linux下I/O多路转接 ...

  8. 如何书写高效的css样式

    如何书写高效的css样式? 有以下四个关键要素: 1.高效的css 2.可维护的css 3.组件化的css 4.hack-free  css 书写高效的css: 1.使用外联样式替代行间样式或内嵌样式 ...

  9. Something about SeekingJob---Resume简历

    这几天脑子里满满的装的都是offer.offer.offer快到碗里来,但是offer始终不是巧克力,并没那么甜美可口易消化. 找工作刚开始,就遇到了不小的阻力,看到Boss直聘上各种与IT相关的工作 ...

  10. linux cenots7安装mysql

        1.下载mysql 下载的话先确认好版本. system:centos7 mysql:5.7 下面的版本自己选择,一般是86位的. 下载好的文件 2.上传到服务器 soft文件夹,终端也进入了 ...