1 Python py job job simulated landing (first week)

Simulated landing:
1. Enter the user account password to login
2. The user information stored in the file
3. After the user inputs the wrong password three times to lock the user

Ideas:

1. The user name and password file passwd, lock the user to lock file

2. The user input using the input account password input, the user is divided passwd file, passwd field and compare the user input and passwd

When the user is determined after 3 times an incorrect input user is written to a file lock, lock exists in the read file

4. prepare in advance to write acc.json file, the user name and password stored in advance inside

flow chart

 

 

 

 

 

import logger,auth
import time

access_logger = logger.logger('access')
menu = u'''
=========Welcome My System=======
please input your username and password
'''
menu1=u'''
=========gogogo========
your password is right!
'''

time_ci=0
while time_ci<3:
    print(menu)
    us_er=input('username>>:')
    who_us=auth.test_user(us_er)
    if who_us:
        us_pass=input('password>>:')
        who_pass=auth.test_pass(us_er,us_pass)
        if who_pass:
            print(menu1)
            break
        else:
            access_logger.error('password is Worng,your only have %d changes '%(3-time_ci))
            time_ci+=1
            time.sleep(5)
    else:
        access_logger.error('username is Worng,your only have %d changes '%(3-time_ci))
        time_ci+=1
        time.sleep(5)
else:
    print('Game over!!!')
main.py
import logging

def logger(logger_name):
    logger=logging.getLogger()
    ch=logging.StreamHandler()
    fh = logging.FileHandler(logger_name)
    formatter=logging.Formatter('%(asctime)s-%(name)s-(levelname)s-%(message)s')
    ch.setFormatter(formatter)
    fh.setFormatter(formatter)
    logger.addHandler(ch)
    logger.addHandler(fh)
    return logger
logger.py
import json

def db_ob():
    f=open('acc.json','r')
    data=f.read()
    f.close()
    return data

def test_user(name):
    data=db_ob()
    data=json.loads(data)
    if name in data:
        return True
def test_pass(name,pswd):
    data=db_ob()
    data=json.loads(data)
    if pswd==data[name]:
        return True
auth.py

 

模拟登陆:
1. 用户输入帐号密码进行登陆
2. 用户信息保存在文件内
3. 用户密码输入错误三次后锁定用户

思路:

1. 用户名密码文件为passwd,锁定用户文件为lock

2. 用户输入账号密码采用input输入,分割passwd文件出user,passwd字段并比较input的user和passwd

3.当用户三次输入错误后将input user写入到lock文件,读取时判断是否在lock文件中存在

4.提前准备写acc.json文件,将用户名密码预先保存在里面

流程图

 

 

 

 

 

import logger,auth
import time

access_logger = logger.logger('access')
menu = u'''
=========Welcome My System=======
please input your username and password
'''
menu1=u'''
=========gogogo========
your password is right!
'''

time_ci=0
while time_ci<3:
    print(menu)
    us_er=input('username>>:')
    who_us=auth.test_user(us_er)
    if who_us:
        us_pass=input('password>>:')
        who_pass=auth.test_pass(us_er,us_pass)
        if who_pass:
            print(menu1)
            break
        else:
            access_logger.error('password is Worng,your only have %d changes '%(3-time_ci))
            time_ci+=1
            time.sleep(5)
    else:
        access_logger.error('username is Worng,your only have %d changes '%(3-time_ci))
        time_ci+=1
        time.sleep(5)
else:
    print('Game over!!!')
main.py
import logging

def logger(logger_name):
    logger=logging.getLogger()
    ch=logging.StreamHandler()
    fh = logging.FileHandler(logger_name)
    formatter=logging.Formatter('%(asctime)s-%(name)s-(levelname)s-%(message)s')
    ch.setFormatter(formatter)
    fh.setFormatter(formatter)
    logger.addHandler(ch)
    logger.addHandler(fh)
    return logger
logger.py
import json

def db_ob():
    f=open('acc.json','r')
    data=f.read()
    f.close()
    return data

def test_user(name):
    data=db_ob()
    data=json.loads(data)
    if name in data:
        return True
def test_pass(name,pswd):
    data=db_ob()
    data=json.loads(data)
    if pswd==data[name]:
        return True
auth.py

 

Guess you like

Origin www.cnblogs.com/westwind01/p/11183596.html