python应用文件读取与登录注册功能


Posted in Python onSeptember 23, 2019

python应用文件读取与登录注册功能,具体实现代码如下所示:

#!/usr/bin/python3
# -*- coding: utf-8 -*-
# Author: zhw
#读取文件中的内容
def open_file(filename ,file_type , *args):
  #读取文件中的数据
  if file_type == 'r':
    flie_list = []
    with open(filename,file_type) as sub_all:
      for file_line in sub_all:
        flie_list.append(file_line.strip())
      #print(flie_list)
      return flie_list
  #读取文件中的用户号
  elif file_type == 'ru':
    flie_list = []
    with open(filename,'r') as sub_all:
      for file_line in sub_all:
        file_l = file_line.split('|')
        user_no = file_l[0]
        flie_list.append(user_no.strip())
      #print(flie_list)
      return flie_list
  #写入文件
  elif file_type == 'a+':
    data = args[0]
    with open(filename, file_type) as sub_all:
      sub_all.write(data +"\n")
  else:
    print('您输入的格式没有,请检查')
class User(object):
  def __init__(self, user_no, user_pw):
    self.user_no = user_no
    self.user_pw = user_pw
    self.file = 'login.log'
  @property
  #检查账号是否已经存在
  def check_user(self):
    flie_list = open_file(self.file, 'ru')
    if self.user_no in flie_list:
      return '1'
    else:
      return '0'
  #注册账号
  def regist(self):
    user_info = '%s|%s' % (self.user_no, self.user_pw)
    open_file(self.file, 'a+',user_info)
    #return'注册成功'
  #账号登录
  def login(self):
    flie_list = open_file(self.file, 'r')
    user_info = '%s|%s' % (self.user_no, self.user_pw)
    if user_info in flie_list:
      return '1'
    else:
      return '0'

def return_more(args):
  pass
#循环验证登录,循环注册账号
while True:
  print('请选择\n '
     '1. 注册\n'
     '2. 登录\n'
     '3. 退出')
  choose = input('请选择').strip()
  if choose == '1':
    for i in range(3):
      user_no = input('请输入注册账号:').strip()
      user_pw = ''
      user = User(user_no,user_pw)
      #检查用户号是否存在
      return_more = user.check_user
      if return_more == '0':
        user_pw = input('请输入注册密码:').strip()
        user = User(user_no, user_pw)
        return_more = user.regist()
        print(return_more)
        break
      else:
        print('您输入的账号已经存在,请选择其他账号')
    #print('您输入的错误次数太多,已退出!')
  elif choose == '2':
     for i in range(3):
       user_no = input('请输入登录账号:').strip()
       user_pw = input('请输入登录密码').strip()
       user = User(user_no, user_pw)
       #用户登录
       return_mk = user.login()
       if return_mk =='0':
         print("登录失败,请重新输入")
       else:
         print('登录成功')
         break
  elif choose == '3':
    break
  else:
    print('输入序号有无,请重新输入')

总结

以上所述是小编给大家介绍的python应用文件读取与登录注册功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Python 相关文章推荐
python模拟登录百度代码分享(获取百度贴吧等级)
Dec 27 Python
Python判断文件和文件夹是否存在的方法
May 21 Python
python妹子图简单爬虫实例
Jul 07 Python
Python爬取京东的商品分类与链接
Aug 26 Python
Django项目实战之用户头像上传与访问的示例
Apr 21 Python
python格式化输出保留2位小数的实现方法
Jul 02 Python
python实现大文本文件分割
Jul 22 Python
Python Pandas 箱线图的实现
Jul 23 Python
Django 多表关联 存储 使用方法详解 ManyToManyField save
Aug 09 Python
python自动脚本的pyautogui入门学习
Apr 01 Python
Tensorflow中的图(tf.Graph)和会话(tf.Session)的实现
Apr 22 Python
OpenCV-Python实现油画效果的实例
Jun 08 Python
Python爬虫 urllib2的使用方法详解
Sep 23 #Python
Python 正则表达式爬虫使用案例解析
Sep 23 #Python
python处理document文档保留原样式
Sep 23 #Python
python 进程间数据共享multiProcess.Manger实现解析
Sep 23 #Python
python程序 线程队列queue使用方法解析
Sep 23 #Python
python程序 创建多线程过程详解
Sep 23 #Python
详解python播放音频的三种方法
Sep 23 #Python
You might like
php设计模式 Visitor 访问者模式
2011/06/28 PHP
PHP取整数函数常用的四种方法小结
2012/07/05 PHP
PHP数组与对象之间使用递归实现转换的方法
2015/06/24 PHP
php结合curl实现多线程抓取
2015/07/09 PHP
使用PHP如何实现高效安全的ftp服务器(一)
2015/12/20 PHP
laravel 实现设置时区的简单方法
2019/10/10 PHP
PHP 代码简洁之道(小结)
2019/10/16 PHP
iframe 自适应高度[在IE6 IE7 FF下测试通过]
2009/04/13 Javascript
JavaScript高级程序设计(第3版)学习笔记2 js基础语法
2012/10/11 Javascript
仿百度的关键词匹配搜索示例
2013/09/25 Javascript
jquery 设置元素相对于另一个元素的top值(实例代码)
2013/11/06 Javascript
Javascript中克隆一个数组的实现代码
2013/12/06 Javascript
Jquery.Form 异步提交表单的简单实例
2014/03/03 Javascript
IE6兼容透明背景图片及解决方案
2015/08/19 Javascript
JS实现简单的二维矩阵乘积运算
2016/01/26 Javascript
jQuery实现简单的回到顶部totop功能示例
2017/10/16 jQuery
VUE脚手架具体使用方法
2019/05/20 Javascript
使用JavaScrip模拟实现仿京东搜索框功能
2019/10/16 Javascript
深入分析JavaScript 事件循环(Event Loop)
2020/06/19 Javascript
element-plus一个vue3.xUI框架(element-ui的3.x 版初体验)
2020/12/02 Vue.js
解决vue项目本地启动时无法携带cookie的问题
2021/02/06 Vue.js
[56:17]NB vs Infamous 2019国际邀请赛淘汰赛 败者组 BO3 第三场 8.22
2019/09/05 DOTA
详解Python中for循环是如何工作的
2017/06/30 Python
Python实现图片转字符画的代码实例
2019/02/22 Python
python实现二级登陆菜单及安装过程
2019/06/21 Python
打包python 加icon 去掉cmd黑窗口方法
2019/06/24 Python
Django框架模板用法入门教程
2019/11/04 Python
Python图像处理库PIL的ImageFilter模块使用介绍
2020/02/26 Python
详解px单位html5响应式方案
2018/03/08 HTML / CSS
戴尔英国官网:Dell英国
2017/05/27 全球购物
模具设计与制造专业应届生求职信
2013/10/18 职场文书
医学毕业生自我鉴定
2013/10/30 职场文书
主治医师岗位职责
2013/12/10 职场文书
化学系大学生自荐信范文
2014/03/01 职场文书
CSS 新特性 contain控制页面的重绘与重排问题
2021/04/30 HTML / CSS
新手入门Jvm-- JVM对象创建与内存分配机制
2021/06/18 Java/Android