学员登录与注册模块

学员登录与注册模块

def print_longin():
    print("1.登录")
    print("2.注册")
    print("3.退出")
    a = int(input("请输入:"))
    if a in [1, 2, 3]:
        return a
    else:
        print("抱歉呢,我们没有该功能")


def with_open_write(user, password):
    """用来实现写入账户和密码"""
    aa = {user: password}
    a = f"{aa}" + '\n'
    with open("user_password.txt", 'a+', encoding="utf-8") as f:
        f.write(str(a))


def with_open_read():
    """用于读取所有的账户"""
    with open("user_password.txt", "a+", encoding="utf-8") as f:
        f.seek(0)  # 指针移动到开头
        user_list = f.readlines()  # 读取所有行
        print(user_list)
        if user_list:  # 判断是否为空
            return user_list   # 返回用户列表
        else:
            return False


def if_user(user):
    """该模块用于实现判断账户是否存在, 需要传入用户名,和用户列表"""
    user_list = user1()
    if user_list:  # 判断用户是否为空
        if user not in user_list:  # 判断输入的用户是否存在
            return True
        else:
            return False
    else:
        return 1


def dict_user_password():
    d = []
    a = with_open_read()
    if a:
        for i in a:
            b = eval(i)
            d.append(b)
        return d
    else:
        return False


def user1():
    """"提取所有的用户名"""
    a = []
    user_list = dict_user_password()
    if user_list:
        for i in range(len(user_list)):  # 循环用户个数的次数
            aa = user_list[i]
            user = [i for i in aa]
            a.append(user[0])
    return a


def password2(user, password):
    """"用于判断密码的正确与否, 使用需要输入用户名和密码"""
    userlist = dict_user_password()  # 获取用户名和密码对应的字典
    for i in range(len(userlist)):  # 循环用户个数的次数找寻密码
        password_nei = (userlist[i]).get(user)
        if password_nei == password:
            return True
        else:
            return False


def longin():
    """用来实现登录功能, 需要传入用户名列表"""
    print("欢迎来到登录界面")
    dict_user = with_open_read()
    if dict_user:
        user = input("请输入账户名:")
        if not if_user(user):
            password = input("请输入密码:")
            if password2(user, password):
                print("登录成功")
            else:
                print("密码错误")
        else:
            print("该账户不存在,请换个账户或注册")
    else:
        print("抱歉您好像还没有注册呢")


def zhuce():
    """"用来实现登录功能"""
    print("欢迎来到注册界面:")
    user = input("请输入账户名:")
    a = if_user(user)
    t_f = a
    if t_f == 1:  # 判断是否为空
        password = input("请输入密码(1 - 12 位):")
        if 1 <= len(password) <= 12:
            with_open_write(user, password)
        else:
            print("抱歉喔,密码格式不对")
    else:
        if t_f:
            password = input("请输入密码:")
            print("ksjdkfjkd")
            with_open_write(user, password)
        else:
            print("抱歉,该账户已经存在")

import main         # 导入模块

a = True
while a:
    choose = main.print_longin()
    if choose == 1:
        main.longin()
    elif choose == 2:
        main.zhuce()
    elif choose == 3:
        a = False
    else:
        print("抱歉请输入整数(1, 2,3)")
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值