Python全栈之路----函数进阶----装饰器

Python之路,Day4 - Python基础4 (new版)

user_status = False #用户登录后改为True

def login(func): #传入想调用的函数名

    def inner():
        _username = 'alex'  #假装这是DB里存的用户信息
        _password = 'abc!23'  #假装这是DB里存的用户信息
        global user_status

        if user_status == False:
            username = input('user:')
            password = input('password:')

            if username == _username and password == _password :
                print('welcome login...')
                user_status = True
            else:
                print('wrong username or password!')
        else:
            print('用户已登录,验证通过...')

        if user_status:
            func()  #执行传入的函数名的函数

    return inner  #返回内层函数的内存地址

def home():
    print('----首页----')

def america():
    login()
    print('----欧美专区----')

def japan():
    print('----日韩专区----')

@login  #相当于henan = login(henan) ,返回inner
def henan():
    login()
    print('----河南专区----')

henan()

猜你喜欢

转载自www.cnblogs.com/Moxiaoyu666/p/10389501.html
今日推荐