day 8 - 2 文件操作练习

发布时间:2019-03-28 20:42:41编辑:auto阅读(1493)

    注册登录

    需求:

    1.对账号密码的长度进行限制并不允许出现特殊字符

    2.把账号密码储存进文件中

    3.密码最多输入错误三次

    #分别判断注册时账号密码的长度与特殊字符
    flag=1
    while flag:
        y=0
        x=0
        username = input('请输入注册的账号:')
        if len(username)>=3 and len(username)<=6:
            print('账号长度符合')
            y=1
        else:
            print('账号长度范围 3-6 ')
        if username.isalnum()==1:
            print('账号类型符合')
            x=1
        else:
            print('账号必须是字母或数字')
        if y+x==2:
            flag=0
    flag=1
    while flag:
        y=0
        x=0
        password = input('请输入注册的密码:')
        if len(password)>=3 and len(password)<=6:
            print('密码长度符合')
            y=1
        else:
            print('密码长度范围 3-6 ')
        if password.isalnum()==1:
            print('密码类型符合')
            x=1
        else:
            print('密码必须是字母或数字')
        if y+x==2:
            flag=0
            
    #把正确格式的账号密码写入文件中,并提示注册成功
    with open('d:/py/file.txt',mode='w',encoding='utf-8') as f:
        f.write('{}\n{}'.format(username,password))
    print("注册成功")
    
    #登录验证用户名与密码,并判读密码输入次数
    i=2
    lis=[]
    flag=1
    with open('d:/py/file.txt',mode='r+',encoding='utf-8') as f2:
        for line in f2:
            lis.append(line)
            #print(lis)
    while flag:
        user = input('请输入账号:')
        if user == lis[0].strip():
            flag=0
        else:print('不存在此账号')
    while i>=0:
        pw = input('请输入密码:')
        if pw==lis[1].strip():
            print("登陆成功")
            break
        elif i==0:
            print('登录次数用完,账号已冻结')
        else:
            print("密码错误,还剩余" + str(i) + "次机会")
        i=i-1

     

关键字