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的三目运算符和not in运算符使用示例
Mar 03 Python
python数据结构之二叉树的统计与转换实例
Apr 29 Python
python基础教程之常用运算符
Aug 29 Python
python通过floor函数舍弃小数位的方法
Mar 17 Python
python调用百度语音REST API
Aug 30 Python
python 二维数组90度旋转的方法
Jan 28 Python
解决python 读取 log日志的编码问题
Dec 24 Python
pytorch构建多模型实例
Jan 15 Python
Python如何发送与接收大型数组
Aug 07 Python
OpenCV+Python3.5 简易手势识别的实现
Dec 21 Python
python sleep和wait对比总结
Feb 03 Python
python自动统计zabbix系统监控覆盖率的示例代码
Apr 03 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
《一拳超人》埼玉一拳下去,他们存在了800年毫无意义!
2020/03/02 日漫
PHP4之真OO
2006/10/09 PHP
php自动加载的两种实现方法
2010/06/21 PHP
初识Laravel
2014/10/30 PHP
Yii把CGridView文本框换成下拉框的方法
2014/12/03 PHP
php实现refresh刷新页面批量导入数据的方法
2014/12/23 PHP
PHP中预定义的6种接口介绍
2015/05/12 PHP
简略的前端架构心得&&基于editor为例子的编码小技巧
2010/11/25 Javascript
用jquery实现自定义风格的滑动条实现代码
2011/04/26 Javascript
jquery插件validate验证的小例子
2013/05/08 Javascript
js时间戳格式化成日期格式的多种方法
2013/11/11 Javascript
JavaScript跨域方法汇总
2014/10/16 Javascript
解决js页面滚动效果scrollTop在FireFox与Chrome浏览器间的兼容问题的方法
2015/12/03 Javascript
JavaScript中创建对象的7种模式详解
2017/02/21 Javascript
基于滚动条位置判断的简单实例
2017/12/14 Javascript
最适应的vue.js的form提交涉及多种插件【推荐】
2018/08/27 Javascript
webpack打包nodejs项目的方法
2018/09/26 NodeJs
Vue-CLI 项目在pycharm中配置方法
2019/08/30 Javascript
在Vue项目中使用Typescript的实现
2019/12/19 Javascript
详解JavaScript中的链式调用
2020/11/27 Javascript
[52:02]完美世界DOTA2联赛PWL S2 FTD.C vs SZ 第一场 11.27
2020/11/30 DOTA
django 自定义用户user模型的三种方法
2014/11/18 Python
利用python获取Ping结果示例代码
2017/07/06 Python
基于python(urlparse)模板的使用方法总结
2017/10/13 Python
PyQt5创建一个新窗口的实例
2019/06/20 Python
检测python爬虫时是否代理ip伪装成功的方法
2019/07/12 Python
使用python代码进行身份证号校验的实现示例
2019/11/21 Python
python 字典套字典或列表的示例
2019/12/16 Python
Python操作Jira库常用方法解析
2020/04/10 Python
什么是python的必选参数
2020/06/21 Python
三只松鼠官方旗舰店:全网坚果销售第1
2017/11/25 全球购物
客户接待方案
2014/02/26 职场文书
本科毕业论文导师评语
2014/12/31 职场文书
2015公司年度工作总结
2015/05/14 职场文书
2016党校培训心得体会
2016/01/07 职场文书
MySQL Server层四个日志的实现
2022/03/31 MySQL