首页 > 编程语言 > 详细

Python_装饰器

时间:2019-10-04 10:00:50      阅读:69      评论:0      收藏:0      [点我收藏+]

【是什么】

不改变原函数的情况下,在函数前后增加一些内容  即装饰器。如计算函数的运行时间

装饰器的主要结构

def 外层函数(参数):
    def 内层函数(*arg, **kwargs):
        return 参数(*arg, **kwargs)
    return 内层函数

装饰器的使用

@装饰器外层函数名
def 被装饰的函数名():
    函数内容

@装饰器名称  两个作用

1. 将下面的函数当做参数传入装饰器函数中
2. 将装饰器函数的返回值重新复制给下面的函数

示例

def func(fun):
    def inner():
        print(before)
        v = fun()
        print(after)
        return v
    return inner
@func
def fun1():
    print(123)

执行 fun1 其实是执行了装饰器内部的inner函数,inner函数内部包含了fun1函数,同时在fun1函数前后增加了需要的内容

技术分享图片

 

 当遇到多函数需要执行相同操作时,可以考虑装饰器,能够不改变函数自身,同时增加需要的内容,后期也方便维护

 

Python_装饰器

原文:https://www.cnblogs.com/wangxiaobei2019/p/11621401.html

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