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中set与frozenset方法和区别详解
May 23 Python
python编码总结(编码类型、格式、转码)
Jul 01 Python
一篇文章弄懂Python中所有数组数据类型
Jun 23 Python
Python一键安装全部依赖包的方法
Aug 12 Python
python  ceiling divide 除法向上取整(或小数向上取整)的实例
Dec 27 Python
python标准库sys和OS的函数使用方法与实例详解
Feb 12 Python
Keras实现将两个模型连接到一起
May 23 Python
使用AJAX和Django获取数据的方法实例
Oct 25 Python
python爬虫看看虎牙女主播中谁最“顶”步骤详解
Dec 01 Python
python中spy++的使用超详细教程
Jan 29 Python
Python多线程实用方法以及共享变量资源竞争问题
Apr 12 Python
python中redis包操作数据库的教程
Apr 19 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下判断数组中是否存在相同的值array_unique
2008/03/25 PHP
php 数据库字段复用的基本原理与示例
2011/07/22 PHP
php实现执行某一操作时弹出确认、取消对话框
2013/12/30 PHP
PHP使用PHPExcel删除Excel单元格指定列的方法
2016/07/06 PHP
js滚动条多种样式,推荐
2007/02/05 Javascript
用Div仿showModalDialog模式菜单的效果的代码
2007/03/05 Javascript
javascript 兼容鼠标滚轮事件
2009/04/07 Javascript
javascript实现的使用方向键控制光标在table单元格中切换
2010/11/17 Javascript
JS操作图片(增,删,改) 例子
2013/04/17 Javascript
js+cookies实现悬浮购物车的方法
2015/05/25 Javascript
js生成随机数的方法实例
2015/10/16 Javascript
jQuery EasyUI右键菜单实现关闭标签/选项卡
2016/10/10 Javascript
JS中页面与页面之间超链接跳转中文乱码问题的解决办法
2016/12/15 Javascript
jQuery通过改变input的type属性实现密码显示隐藏切换功能
2017/02/08 Javascript
vscode下的vue文件格式化问题
2018/11/28 Javascript
微信小程序自定义顶部组件customHeader的示例代码
2020/06/03 Javascript
js实现跳一跳小游戏
2020/07/31 Javascript
[03:30]完美盛典趣味短片 CSGO2019年度名场面
2019/12/07 DOTA
简单使用Python自动生成文章
2014/12/25 Python
Python的Bottle框架中返回静态文件和JSON对象的方法
2015/04/30 Python
Python的randrange()方法使用教程
2015/05/15 Python
浅谈Python对内存的使用(深浅拷贝)
2018/01/17 Python
django框架CSRF防护原理与用法分析
2019/07/22 Python
Python 元组拆包示例(Tuple Unpacking)
2019/12/24 Python
Python阶乘求和的代码详解
2020/02/14 Python
matlab、python中矩阵的互相导入导出方式
2020/06/01 Python
canvas学习笔记之绘制简单路径
2019/01/28 HTML / CSS
值得收藏的HTML5资源(学习html5的朋友可以收藏下)
2010/07/20 HTML / CSS
Mountain Hardwear官网:攀岩服装和户外装备
2019/09/26 全球购物
Kiwi.com中国:找到特价机票并发现新目的地
2019/10/27 全球购物
如何获取某个日期是当月的最后一天
2013/12/05 面试题
《燕子专列》教学反思
2014/02/21 职场文书
实习证明格式范文
2014/10/14 职场文书
上课迟到检讨书范文
2015/05/06 职场文书
小学运动会前导词
2015/07/20 职场文书
Spring Boot 实现 WebSocket
2022/04/30 Java/Android