装饰器

简介: # 装饰器的本质: 闭包函数 # 功能: 就是在不改变原函数调用方式的情况下,在这个函数前后加上扩张功能 def timemer(func): def inner(*args,**kwargs): '''添加函数调用之前的扩展代码''' ret = fun.
# 装饰器的本质:  闭包函数
# 功能:  就是在不改变原函数调用方式的情况下,在这个函数前后加上扩张功能
def timemer(func):
    def inner(*args,**kwargs):
        '''添加函数调用之前的扩展代码'''
        ret = func(*args,**kwargs)
        '''添加函数调用之后的扩展代码'''
        return ret
    return inner
# 设计模式 原则 开放封闭原则
# 对扩展是开放的
# 对修改是封闭的

import time
def wrapper(func): #装饰
    def inner(*args,**kwargs):
        start = time.time()
        ret = func(*args,**kwargs)
        end = time.time()
        print(end - start)
        return ret
    return inner
@wrapper    #语法糖
def lll():
    time.sleep(0.1)
    print('hello')

lll()
---
hello
0.10107421875
目录
相关文章
|
1月前
|
测试技术 Python
装饰器
【8月更文挑战第1天】
14 2
|
4月前
|
JavaScript
03_装饰器
03_装饰器
59 1
|
4月前
22_自定义装饰器
22_自定义装饰器
110 0
|
Python
一日一技:装饰器如何装饰异步函数
一日一技:装饰器如何装饰异步函数
148 0
|
存储 JavaScript 前端开发
装饰器语法
利用typeof判定类型的取值范围是:'undefined' /'boolean' /'string' /'number' /'object' /'function' /'symbol' 在JavaScript内部使用typeof判断类型依据的是二进制,根据变量的机器码低位1-3位存储其类型信息,有如下规则:
100 0
|
JSON 数据格式
装饰器的实际应用
使用装饰器模式改造slf4j打印json格式日志
743 0
装饰器的实际应用
|
开发者 Python
装饰器详解|学习笔记
快速学习装饰器详解
|
Python
Python编程:decorator装饰器
Python编程:decorator装饰器
113 0
|
设计模式 JavaScript 前端开发
2021你要知道的前端装饰器(Decorator)
2021你要知道的前端装饰器(Decorator)
652 0