首页 > 编程语言 > 详细

Python装饰器的使用

时间:2019-11-03 09:40:26      阅读:88      评论:0      收藏:0      [点我收藏+]

简单使用

def decorator(new_func):
    def inner():
        print("+++")
        new_func()
    return inner

@decorator
def show():
    print("BBB")

show()

#结果如下:
+++
BBB

装饰器带有参数的函数

def decorator(func):
    def inner(num1,num2):
        print("计算结果如下:")
        func(num1,num2)
    return inner

@decorator
def sum(num1,num2):
    result=num1+num2
    print(result)

sum(2,3)

#结果如下:
计算结果如下:
5

通用的装饰器

def decorator(func):
    def inner(*args, **kwargs):
        print("计算结果如下", end=" ")
        result=func(*args, **kwargs)
        return result
    return inner

@decorator
def sum(num1, num2, num3):
    result = num1 + num2 + num3
    return result

result = sum(1, 2,5)
print(result)

#结果如下:
计算结果如下 8

带有参数的装饰器

def get_decorator(char):
    def decorator(func):
        def inner():
            print(char)
            func()
        return inner
    return decorator

@get_decorator("aaaa")
def show():
    print("1111")

show()

#结果如下:
aaaa
1111

Python装饰器的使用

原文:https://www.cnblogs.com/hankleo/p/11785184.html

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