python基础之作业1---用户登录

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python基础之作业1---用户登录相关的知识,希望对你有一定的参考价值。

作业:编写登陆接口

  • 输入用户名密码
  • 认证成功后显示欢迎信息
  • 输错三次后锁定



import sys, os, getpass

os.system(‘clear‘)
i = 0
while i < 3: # 异常不超过3次就不断循环
name = input("请输入用户名:")

lock_file = open(‘a.docx‘, ‘r+‘) # 当用户输入用户名后,打开LOCK 文件 以检查是否此用户已经LOCK了
  lock_list = lock_file.readlines()

for lock_line in lock_list: # 循环LOCK
lock_line = lock_line.strip(\n‘) # 去掉换行符
print(lock_line.strip()) # 解释一下这个的作用
if name == lock_line: # 如果LOCK了就直接退出
sys.exit(‘用户 %s 已经被锁定,退出‘ % name)

user_file = open(‘a.docx‘, ‘r‘) # 打开帐号文件
user_list = user_file.readlines()
print(user_file.readlines())
for user_line in user_list: # 对帐号文件进行遍历
(user, password_line) = user_line.strip(\n‘).split() # 分别获取帐号和密码信息
if name == user: # 如用户名正常匹配
j = 0
while j < 3: # 只要用户密码异常不超过3次就不断循环
password = getpass.getpass(‘请输入密码:‘) # 输入隐藏密码
if password == password_line: # 密码正确,提示欢迎登录
print(‘欢迎登录管理平台,用户%s‘ % name)
sys.exit(0) # 正常退出

else:
lock_file.write(name + \n‘) # 密码输入三次错误后,将该用户追加到LOCK文件
sys.exit(‘用户 %s 达到最大登录次数,将被锁定并退出‘ % name)
else:
pass # 当用户没匹配时,跳过并继续循环

else:
sys.exit(‘用户 %s 不存在,退出‘ % name) # 用户输入三次错误后,异常退出

lock_file.close() # 关闭LOCK文件
user_file.close() # 关闭帐号文件










































以上是关于python基础之作业1---用户登录的主要内容,如果未能解决你的问题,请参考以下文章

python基础之判断用户登录

Python之编写登录接口

Python基础作业一:模拟用户登陆

python作业之用户三次登录及锁定

python之用户登陆作业

Python开发入门14天集训营·第1章Python基础语法-编写登陆认证程序