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文件比较示例分享
Jan 10 Python
Python中的map()函数和reduce()函数的用法
Apr 27 Python
python中enumerate函数用法实例分析
May 20 Python
Python中列表和元组的相关语句和方法讲解
Aug 20 Python
pandas.loc 选取指定列进行操作的实例
May 18 Python
对python字典元素的添加与修改方法详解
Jul 06 Python
解决py2exe打包后,总是多显示一个DOS黑色窗口的问题
Jun 21 Python
Python在OpenCV里实现极坐标变换功能
Sep 02 Python
如何为Python终端提供持久性历史记录
Sep 03 Python
Python %r和%s区别代码实例解析
Apr 03 Python
使用Keras加载含有自定义层或函数的模型操作
Jun 10 Python
Python读写yaml文件
Mar 20 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
《破坏领主》销量已超100万 未来将继续开发新内容
2020/03/08 其他游戏
php数据结构 算法(PHP描述) 简单选择排序 simple selection sort
2011/08/09 PHP
php图片裁剪函数
2018/10/31 PHP
JavaScript基于setTimeout实现计数的方法
2015/05/08 Javascript
JS简单实现多级Select联动菜单效果代码
2015/09/06 Javascript
JavaScript中setTimeout和setInterval函数的传参及调用
2016/03/11 Javascript
简单实现js页面切换功能
2021/01/10 Javascript
angularjs实现文字上下无缝滚动特效代码
2016/09/04 Javascript
Bootstrap模态窗口源码解析
2017/02/08 Javascript
Node.js应用设置安全的沙箱环境
2018/04/23 Javascript
使用Angular material主题定义自己的组件库的配色体系
2019/09/04 Javascript
vue3实现v-model原理详解
2019/10/09 Javascript
[12:29]《一刀刀一天》之DOTA全时刻19:蝙蝠骑士田伯光再度不举
2014/06/10 DOTA
Python字符串替换实例分析
2015/05/11 Python
python实现JAVA源代码从ANSI到UTF-8的批量转换方法
2015/08/10 Python
利用Python批量生成任意尺寸的图片
2016/08/29 Python
Python微信公众号开发平台
2018/01/25 Python
Python魔法方法功能与用法简介
2019/04/04 Python
python tkinter实现屏保程序
2019/07/30 Python
Python实现把类当做字典来访问
2019/12/16 Python
python实现打砖块游戏
2020/02/25 Python
django admin 添加自定义链接方式
2020/03/11 Python
10个python3常用排序算法详细说明与实例(快速排序,冒泡排序,桶排序,基数排序,堆排序,希尔排序,归并排序,计数排序)
2020/03/17 Python
Python通过Pillow实现图片对比
2020/04/29 Python
如何用Python徒手写线性回归
2021/01/25 Python
实例讲解利用HTML5 Canvas API操作图形旋转的方法
2016/03/22 HTML / CSS
美国著名珠宝品牌之一:Jared The Galleria Of Jewelry
2016/10/01 全球购物
罗马尼亚购物网站:Vivantis.ro
2019/07/20 全球购物
优秀求职自荐信怎样写
2013/12/18 职场文书
村庄环境整治方案
2014/05/15 职场文书
交通事故赔偿协议书怎么写
2014/10/04 职场文书
2015年会计个人工作总结
2015/04/02 职场文书
死亡诗社观后感
2015/06/05 职场文书
财产分割协议书
2016/03/22 职场文书
心得体会该怎么写呢?
2019/06/27 职场文书
使用springMVC所需要的pom配置
2021/09/15 Java/Android