zoukankan      html  css  js  c++  java
  • day13作业—(登录注册)

    2.写一个函数完成三次登陆功能:

    1. 用户的用户名密码从一个文件register中取出。
    2. register文件包含多个用户名,密码,用户名密码通过|隔开,每个人的用户名密码占用文件中一行。
    3. 完成三次验证,三次验证不成功则登录失败,登录失败返回False。
    4. 登陆成功返回True。
      def login():
          for em in range(3):    #三次跳出
              my_user, my_pwd = input('user|pwd:').strip().split('|')#列表分别赋值
              with open('register','r',encoding='utf-8')as f:
                  for i in f:
                      user,pwd = i.strip().split('|')
                      if my_user == user and my_pwd ==pwd:
                          return True
                  else:
                      print('用户名或密码错误')
          else:
              return False#三次跳出
      print(login())  #return  返回True  打印

      3.再写一个函数完成注册功能:

      (1)用户输入用户名密码注册。

      (2)注册时要验证(文件regsiter中)用户名是否存在,如果存在则让其重新输入用户名,如果不存在,则注册成功。

      (3)注册成功后,将注册成功的用户名,密码写入regsiter文件,并以 | 隔开。

      (4)注册成功后,返回True,否则返回False。

    5. def register():
          lis = []
          while 1:
              with open('regsiter', 'r+', encoding='utf-8')as f:
                  user, pwd = input('user|pwd').strip().split('|')
                  for i in f.read().strip('').split('
      '):  # ['liuyang|123', 'mengge|234', 'qingge|345', 'binge|456', 'hongjunge|567']
                      my_user, my_pwd = i.split('|')  # ['liuyang', '123']  liuyang 123
                      lis.append(my_user)
                  if user in lis:
                      print('重新输入')
                      return False  # 注释了这两句 可以一直输出
                  else:
                      f.write(f'
      {user}|{pwd}')
                      print('写入成功!')
                      return True
      print(register()
  • 相关阅读:
    译码器(选择器)
    RAM搭建
    ALU运算
    Base64
    关于Singleton
    C# WinForm导出Excel
    windows phone 前台布局以及画刷Brush使用 北京
    点击控件出现下沉或者倾斜技巧。(是你的控件不在死板,) 北京
    Centos5.4+Nginx+mysql5+php5+Zend3.3.3详细安装教程(转载请注明formating编写)
    如何锻炼身体
  • 原文地址:https://www.cnblogs.com/Doner/p/10556653.html
Copyright © 2011-2022 走看看