day16 atmx项目 register logging file_handle

发布时间 2023-12-08 17:03:22作者: Junior_bond
register.py
from atm.lib_common.file_handle import *
def register_username_pwd():
    """注册账户密码"""
    username=input("请输入你注册的用户名:>>>")
    pwd=input("请输入你的注册密码:>>>")
    return username,pwd

def register():
    """注册"""
    register_count=True
    print("\033[0;33;40m", "欢迎来到注册功能", "\033[0m")
    while register_count>0:
        username,pwd=register_username_pwd()
        data=file_r(r"F:\pylearn\atm\api\账户密码.txt")
        for i in data:
            i.strip().split(":")#['yjw', '123']
            #print(i.strip().split(":"))
            username_file=i.strip().split(":")[0]
            pwd_file=i.strip().split(":")[1]
            if username==username_file:
                print("此用户名已被注册!")
                register_again=input("请选择是否继续注册,继续注册输入y,退出注册输入n:>>>")
                if register_again=="y":
                    print("请继续注册!")
                    break
                else:
                    return
        else:#for 循环也有一个大多数人都不熟悉 else 子句,该 else 子句在循环正常完成时执行,这意味着循环没有遇到任何 break 语句
             file_a(r"F:\pylearn\atm\api\账户密码.txt",f"{username}:{pwd}:0\n")
             print("\033[7;36m", "恭喜您,注册成功!", "\033[0m")
             return
logging.py
from atm.lib_common.file_handle import *
def logging_username_pwd():
    """登陆账户密码"""
    username=input("请输入你的用户名:>>>")
    pwd=input("请输入你的密码:>>>")
    return username,pwd


def logging():
    """登陆,三次登陆不成功退出"""
    logging_count=3
    print("\033[0;33;40m", "欢迎来到登陆功能", "\033[0m")
    while logging_count>0:
        username,pwd=logging_username_pwd()
        data=file_r(r"F:\pylearn\atm\api\账户密码.txt")
        for i in data:
            #print(i.strip().split(":"))
            username_file=i.strip().split(":")[0]
            pwd_file=i.strip().split(":")[1]
            if username!=username_file:
                continue
            elif username==username_file:
                if pwd==pwd_file:
                    print("登陆成功!")
                    return
        else:
            logging_count-=1
            if logging_count==0:
                print("账户密码不正确,抱歉,您的登陆机会已用尽!")
                return
            print(f"账户密码不正确,请重新再试,您还有{logging_count}次机会!")

file_handle.py

def file_a(filename,content):
    """a模式修改文件  在文件末尾追加内容"""
    with open(filename,"a",encoding="utf8") as fa:
        fa.write(content)


def file_w(filename,content):
    """w模式修改文件  清空文件再写"""
    with open(filename,"w",encoding="utf8") as fw:
        fw.write(content)


def file_r(fimename):
    """r模式读文件"""
    with open(fimename,"r",encoding="utf8") as fr:
        data=fr.readlines()
    return data

#print(file_r(r"F:\pylearn\atm\api\账户密码.txt"))