day13作业—(登录注册)

时间:2019-03-19
本文章向大家介绍day13作业—(登录注册),主要包括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():
        while 1:
            my_user, my_pwd = input('user|pwd:').strip().split('|')
            with open('register', 'r+', encoding='utf-8')as f: # r+支持读写
                for i in f:
                    user, pwd = i.strip().split('|')  #列表分别赋值
                    if my_user == user:
                        print('用户名已存在,请重新输入用户名')
                        break   #跳出 继续循环
                    else:
                        f.write(f'\n{my_user}|{my_pwd}')
                        print('注册成功')
                        return True  # return 自动跳出
    register()