Python文件操作模拟用户登陆代码实例

2020-10-07 0 644

题目要求

1、输入用户名和密码后回车

2、密码输入错误,给出提示,并选择是否重新输入

3、密码输入错误三次后,用户被锁定,无法继续登陆

构思

1、用户输入账号和密码后,需要判断账号是否存在

2、判断账号是否被禁用(错误次数大于三次)

3、判断账号密码是否正确

4、不同的错误给出不同的提示

5、每输入错一次,文档中的错误次数需要更新

6、如果三次以内用户登陆成功,密码原来的错误次数被重置

题目完成步骤

1、文档的编写

考虑到数据的存储问题,决定将账号、密码、错误次数进行分行存储,三行为一组用户信息

Python文件操作模拟用户登陆代码实例

2、代码编写

go = True
while go:
  # 用来判断账号是否存在
  no_existence_flag = True
  # 用来判断是否输入正确
  no_flag = True
  # 用来判断是否已经被封
  disable_flag = True
  # 用来判断次数是否已经超过限制
  account = input(\"account:\")
  password = input(\"password:\")
  # 判断账号是否存在(自己写入已存在用户的账号密码)
  file = open(\"C:/Users/Lenovo/Desktop/user.txt\",\"r\")
  # 用于拼接文本内容
  file_data = \"\"
  while True:
    line = file.readline()
    if not line:
      break
    file_data += line
    line_content = line.strip()
    # 判断是否存在账号
    if account == line_content:
      no_existence_flag = False
      true_password = file.readline()
      file_data += true_password
      true_password_content = true_password.strip()
      disable_flag_line = file.readline()
      disable_flag_num = int(disable_flag_line.strip())
      # 判断账号是否被禁用
      if disable_flag_num != 3:
        print(\"It is not disable!\",disable_flag_num)
        disable_flag = False
        # 判断密码是否正确
        if password == true_password_content:
          no_flag = False
          print(\"Welcome in this system,{account}!\".format(account = account))
          go = False
          disable_flag_line = disable_flag_line.replace(str(disable_flag_num),str(0))
          file_data += disable_flag_line
        else:
          disable_flag_line = disable_flag_line.replace(str(disable_flag_num),str(disable_flag_num+1))
          file_data += disable_flag_line
      else:
        file_data += file.readline()
    else:
      file_data += file.readline()
      file_data += file.readline()
  file.close()
  # 账号不存在的报错
  if no_existence_flag:
    print(\"This account is not existence!\")
    print(\"Do you want to try it again......\")
    flag = input(\"Please input you think:\")
    if flag == \"N\":
      go = False
    continue
  # 账号被禁用的报错
  if disable_flag:
    print(\"You account is disable,please go home by youself!\")
    print(\"Do you want to try it again......\")
    flag = input(\"Please input you think:\")
    if flag == \"N\":
      go = False
    continue
  # 账号密码错误的报错
  if no_flag:
    file = open(\"C:/Users/Lenovo/Desktop/user.txt\",\"w\")
    print(file_data)
    file.write(file_data)
    file.close()
    print(\"Your password is not right,please try it again!\")
    print(\"Do you want to try it again......\")
    flag = input(\"Please input you think:\")
    if flag == \"N\":
      go = False
  # 重置输入次数
  else:
    file = open(\"C:/Users/Lenovo/Desktop/user.txt\",\"w\")
    print(file_data)
    file.write(file_data)
    file.close()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持自学编程网。

遇见资源网 Python Python文件操作模拟用户登陆代码实例 http://www.ox520.com/26011.html

常见问题

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务