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

2021/4/30 18:57:16

本文主要是介绍在 装饰器的外层,再拓展额外的功能进行 判断,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

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

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()


这篇关于在 装饰器的外层,再拓展额外的功能进行 判断的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程