欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

python 作业 编写登陆接口

程序员文章站 2022-04-24 20:26:10
用Python编写一个简单的登陆接口要求1,输入用户名密码2,认证成功后显示欢迎信息3,输错3次后用户锁定blacklist.txt内容zhaoyiqianersunanlisiuserlist.txt内容zhouwu 123456wuliu 123456zhengqi 123456www 1234 ......
用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')                   #如果输错用户名显示没有用户