python编辑用户登入界面的实现代码

yipeiwu_com6年前Python基础

1.需求分析

  登入界面需要达到以下要求:

  1. 系统要有登入和注册两个选项可供选择
  2. 系统要能够实现登入出错提示,比如账户密码错误等,用户信息保存在user_info.txt文件夹中
  3. 系统要能够进行登入错误次数统计并锁定,当用户输入3次错误时账户密码时,改账户被锁定,并将锁定账户保存于login_lock.txt文件夹中
  4. 注册界面要能够进行用户名重复提示,当用户注册账户已存在时,进行相应信息的提示。

1.代码实现

getNum = int(input("1.登入\n2.注册\nPlease Input the Choose :"))
while getNum<1 or getNum>2:
  getNum =int(input("无效值 :"))
username = input("用户名: ")
password = input("密码: ")
if getNum == 1:#登入
  ErrNums = 0
  while ErrNums<3:
    T = False
    fp = open('login_lock.txt','r')#打开锁定文件查看输入的账户是否被锁定
    lines = fp.readlines()#读取所有行
    while T== False:
      for line in lines:
        if line.split(',')[0] == username:
          print("帐号已被锁定 !")
          username = input("用户名: ")
          password = input("密码: ")
          break
      T=True
    fp.close()
    T = False
    fp_user = open('user_info.txt','r')#打开用户信息文件:
    lines = fp_user.readlines()
    for line in lines:
      if line.split(',')[0] == username:
        if line.split(',')[1] == password+'\n'or line.split(',')[1] == password:
          print("登入成功 !")
          T = True
          break
    fp_user.close()
    if T == False:#登入失败了
      ErrNums += 1
      if ErrNums >= 3:
        fp_user = open('login_lock.txt','a')
        print("账户已被锁定 !")
        fp_user.write('\n'+username)
        fp_user.close()
        break
      print("账户名或密码错误 !")
      username = input("用户名: ")
      password = input("密码: ")
    else:
      break
elif getNum == 2:#注册
  fp= open('user_info.txt','r')#打开用户信息文件:
  T = False
  lines = fp.readlines() # 读取所有行
  while T == False:
    for line in lines:
      if line.split(',')[0] == username:
        print("帐号已存在,请重新输入 !")
        username = input("用户名: ")
        password = input("密码: ")
        break
      T = True
  fp.close()
  fp = open('user_info.txt', 'a') # 打开用户信息文件:
  fp.write(username+','+password+'\n')
  print("注册成功 !")

  user_info.txt文件的内容如下图:

  

  代码的重要部分都有注解,txt文件的创建目前存放与工程目录中,使用相对路径方便调用,如不在该文件夹中则代码中的路径需要改成绝对路径,否则程序运行后会有问题。代码中仍有不完善的地方,忘有经验的朋友给句指出与探讨。

总结

以上所述是小编给大家介绍的python编辑用户登入界面的实现代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对【听图阁-专注于Python设计】网站的支持!

相关文章

opencv-python 读取图像并转换颜色空间实例

我就废话不多说了,直接上代码吧! #-*- encoding:utf-8 -*- ''' python 绘制颜色直方图 ''' import cv2 import numpy as...

Python中的迭代器与生成器高级用法解析

迭代器 迭代器是依附于迭代协议的对象——基本意味它有一个next方法(method),当调用时,返回序列中的下一个项目。当无项目可返回时,引发(raise)StopIteration异常...

Python使用正则表达式分割字符串的实现方法

如下: re.split(pattern, string, [maxsplit], [flags]) pattern:表示模式字符串,由要匹配的正则表达式转换而来。 string...

python将ansible配置转为json格式实例代码

python将ansible配置转为json格式实例代码

python将ansible配置转为json格式实例代码 ansible的配置文件举例如下,这种配置文件不利于在前端的展现,因此,我们用一段简单的代码将ansible的配置文件转为jso...

Django Rest framework频率原理与限制

Django Rest framework频率原理与限制

前言 开发平台的API接口调用需要限制其频率,以节约服务器资源和避免恶意的频繁调用. DRF就为我们提供了一些频率限制的方法. DRF中的版本、认证、权限、频率组件的源码是一个流程,且...