首页 > 其他 > 详细

史上最精简版装饰器

时间:2020-06-18 23:13:45      阅读:69      评论:0      收藏:0      [点我收藏+]

装饰器

一:什么是装饰器?

装饰器就是装饰函数的函数,为函数添加功能的容器

二:为什么要有装饰器?

引入装饰器的原因主要是为了在不修改原有函数代码的情况下,增加额外功能

三:如何使用装饰器

# 无参数装饰器模板
def wrapper(func):
	def inner(*args,**kwargs):
        res = func(*args,**kwargs)
        reunrn res
    retun inner

示列
#  写一个程序运行,计算程序快慢
import time
def timer(func):
    def wrapper(*args,**kwargs):
        start_t = time.time()
        res = func(*args,**kwargs)
        end_t = time.time()
        pritn("这个程序运行时间:{}".format(end_t-start_t))
        return res
    return wrapper

def foo():
    print(1)
    time.sleep(2)

foo=timer(foo)
foo()

@timer   # bar = timer(bar)
def bar(a,b):
    print(a,b)
    return a,b

bar(1,3)

史上最精简版装饰器

原文:https://www.cnblogs.com/wait59/p/13160360.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!