# encoding: utf-8

# Creator:耿亚月   Creation time:2017-1-1
# Modifier:耿亚月    Modification time:2017-1-2
#filename:CheckLogin



import xlrd
import os
import getpass



#查看账号是否注册过
def CheckRegister(username,allusers):
    for user in allusers:
        user = user.strip().split(',')
        if username == user[0]:
            time = 4
            register = 'yes'
            break
        else:
            register = 'no'
    if register == 'yes':
        return 'yes'
    else:
        return 'no'

#查看账号是否被锁定过
def CheckLocked(username,lockedusers):
    for user in lockedusers:
        user = user.strip().split(',')
        if username == user[0]:
            locked = 'yes'
            break
        else:
            locked = 'no'
    if locked == 'yes':
        return 'yes'
    else:
        return 'no'

#查看是否可以登陆
def CheckLogin(username,allusers):
    for user in allusers:
        user = user.strip().split(',')
        if username == user[0] and password == user[1]:
            time = 4
            login = 'yes'
            break
        else:
            login = 'no'
    if  login == 'yes':
        return 'yes'
    else:
        return 'no'


# path = os.getcwd()
path = 'E:\\code\\exercise\\Day1\\CheckLogin'
AllUsers = open(path+'\\AllUsers.txt')
LockedUsers = open(path+'\\LockedUsers.txt')
allusers = AllUsers.readlines()
lockedusers = LockedUsers.readlines()
AllUsers.close()
LockedUsers.close()


time = 0
pas = ''
while time < 3:
    username = input('username:')
    password = input('password:')
    # password=getpass.getpass('password:')

#查看账号是否注册过
    if CheckRegister(username,allusers) == 'no':
        print('there is no this username, please register in first')
        break
    else:
    #查看账号是否被锁定过
        if CheckLocked(username,lockedusers) == 'yes':
                print('this ID has been locked')
                break
        else:
        #查看是否可以登陆
                if CheckLogin(username,allusers) == 'yes':
                    print('welcome user {name} login...'.format(name=username))
                    break
                else:
                    time += 1
                    if time < 3:
                        print('Invalid username or password!')
                    else:
                        print('you put username or password over 3 time,this ID has been locked')
                    #将输错超过3次的用户名写入到ockedLUser文件里
                        LockedUsers = open(path+'\\LockedUsers.txt','a')
                        LockedUsers.write('\n'+username + ',' + password )
                        LockedUsers.close()

 

posted on 2017-01-02 17:27  Mu_Lancy  阅读(602)  评论(0编辑  收藏  举报