其他分享
首页 > 其他分享> > 在 装饰器的外层,再拓展额外的功能进行 判断

在 装饰器的外层,再拓展额外的功能进行 判断

作者:互联网

在实现用户验证的登录的时候可以使用装饰器工厂产生装饰器,让装饰器得到参数,从而判断登录类型,并验证用户登录条件,代码实现如下:


def login_type(type):
    def Outer(F):
        def inner():
            if type == 'QQ':
                name = input('请输入用户名:')
                psw = input('请输入密码:')
                if name == '汪凡' and psw == '198765':
                    print('登陆成功!')
                    return F()
                else:
                    print('登录失败,请正确输入!')
            else:
                print('请使用QQ登录!')
        return inner
    return Outer
 
type = input('请输入登录方式:')
@login_type(type)
def America():
    print('美国人')
 
@login_type(type)
def Japan():
    print('日本人')
 
America()

标签:外层,额外,return,登录,拓展,print,input,type,def
来源: https://blog.csdn.net/qq_25986923/article/details/116307962