有参装饰器、多层语法糖

一、双层语法糖

'''双层语法糖'''
import time

'''验证装饰器'''
def login(xxx):  # 步骤5:无代码块,故执行返回值 返回count
    def count(*args,**kwargs):  # 步骤8:所以运行login内层函数 运行函数体
        '''装饰对象被调用前,添加的新功能'''
        username = input('请输入用户名>>>:').strip()
        password = input('请输入密码>>>:').strip()
        if username == 'chen' and password == '123':  # 步骤9:运行验证判断正确后进入

            rel = xxx(*args,**kwargs)  # 步骤10:rel = get_time()
            '''装饰对象被调用后,添加的新功能'''
            return rel  # 步骤11:返回值rel就是get_time()
        else:
            print('请输入正确的账号或密码')
    return count  # 步骤6:因为是双层语法糖,这里就是最后一层,所以:show=count

'''计算执行时间装饰器'''
def outer(zzz):  # 步骤2:无代码块,故执行第一层函数的返回值,返回gei_time
    def get_time(*args,**kwargs):   # :步骤12:进入outer函数的内层函数中,运行函数体
        '''被装饰对象调用前,添加的新功能'''
        start_time = time.time()  # 步骤12-1:运行定义的起始时间
        res = zzz(*args,**kwargs
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值