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


Posted in Python onJuly 16, 2018

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文件的内容如下图:

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

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

总结

以上所述是小编给大家介绍的python编辑用户登入界面的实现代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Python 相关文章推荐
Python OS模块常用函数说明
May 23 Python
Python实现简单多线程任务队列
Feb 27 Python
Python出现segfault错误解决方法
Apr 16 Python
python实现对指定输入的字符串逆序输出的6种方法
Apr 26 Python
对numpy数据写入文件的方法讲解
Jul 09 Python
解决python3 urllib 链接中有中文的问题
Jul 16 Python
Django生成PDF文档显示在网页上以及解决PDF中文显示乱码的问题
Jul 04 Python
解决python中用matplotlib画多幅图时出现图形部分重叠的问题
Jul 07 Python
Python-Tkinter Text输入内容在界面显示的实例
Jul 12 Python
tensorboard显示空白的解决
Feb 15 Python
python代码实现TSNE降维数据可视化教程
Feb 28 Python
Python基于正则表达式实现计算器功能
Jul 13 Python
python 反向输出字符串的方法
Jul 16 #Python
解决python3 urllib 链接中有中文的问题
Jul 16 #Python
如何用Python实现简单的Markdown转换器
Jul 16 #Python
详解python里的命名规范
Jul 16 #Python
Python 2.7中文显示与处理方法
Jul 16 #Python
Python定时任务sched模块用法示例
Jul 16 #Python
python中使用print输出中文的方法
Jul 16 #Python
You might like
php类中的$this,static,final,const,self这几个关键字使用方法
2015/12/14 PHP
PHP 类与构造函数解析
2017/02/06 PHP
详解Yii2.0使用AR联表查询实例
2017/06/16 PHP
Javascript实现的分页函数
2006/12/22 Javascript
jquery操作下拉列表、文本框、复选框、单选框集合(收藏)
2014/01/08 Javascript
node-webkit打包成exe文件被360误报木马的解决方法
2015/03/11 Javascript
Jquery为DIV添加click事件的简单实例
2016/06/02 Javascript
angularjs 表单密码验证自定义指令实现代码
2016/10/27 Javascript
完全深入学习Bootstrap表单
2016/11/28 Javascript
javascript和jQuery中的AJAX技术详解【包含AJAX各种跨域技术】
2016/12/15 Javascript
JavaScript实现向select下拉框中添加和删除元素的方法
2017/03/07 Javascript
javascript简单写的判断电话号码实例
2017/05/24 Javascript
js如何编写简单的ajax方法库
2017/08/02 Javascript
JavaScript伪数组用法实例分析
2017/12/22 Javascript
详解tween.js 中文使用指南
2018/01/05 Javascript
Vue项目组件化工程开发实践方案
2018/01/09 Javascript
JS脚本实现网页自动秒杀点击
2018/01/11 Javascript
vue2.0在没有dev-server.js下的本地数据配置方法
2018/02/23 Javascript
vue.js轮播图组件使用方法详解
2018/07/03 Javascript
React Native 混合开发多入口加载方式详解
2019/09/23 Javascript
vue项目打包后请求地址错误/打包后跨域操作
2020/11/04 Javascript
详解Python中的文本处理
2015/04/11 Python
Python随手笔记第一篇(2)之初识列表和元组
2016/01/23 Python
Python中方法链的使用方法
2016/02/23 Python
浅析Python 3 字符串中的 STR 和 Bytes 有什么区别
2018/10/14 Python
基于Python实现迪杰斯特拉和弗洛伊德算法
2020/05/27 Python
python 申请内存空间,用于创建多维数组的实例
2019/12/02 Python
深入了解NumPy 高级索引
2020/07/24 Python
python 实现图片修复(可用于去水印)
2020/11/19 Python
CSS3教程(4):网页边框和网页文字阴影
2009/04/02 HTML / CSS
CSS 说明横向进度条最后显示文字的实现代码
2020/11/10 HTML / CSS
只要五步 就可以用HTML5/CSS3快速制作便签贴特效(图)
2012/06/04 HTML / CSS
Diamondback自行车:拥有你的冒险
2019/04/22 全球购物
2014年人力资源部工作总结
2014/11/19 职场文书
2016年清明节寄语
2015/12/04 职场文书
HTML基础详解(上)
2021/10/16 HTML / CSS