python-装饰器入门demo

def begin_end(old):
    """
    用来对其他函数进行扩展,使其他函数可以在执行前打印开始执行,执行后打印执行结束
    :param old: 要扩展的函数对象
    :return:
    """
    # 创建一个新函数
    def new_function(*args,**kwargs):
        print("开始执行....")
        # 调用被扩展的函数
        result=old(*args,**kwargs)
        print("执行结束....")
        # 返回函数的执行结果
        return result
    # 返回新函数
    return new_function

@begin_end
def say_hello():
    print('hello')
    
say_hello()

 

def begin_end(old):
"""
用来对其他函数进行扩展,使其他函数可以在执行前打印开始执行,执行后打印执行结束
:param old: 要扩展的函数对象
:return:
"""
# 创建一个新函数
def new_function(*args,**kwargs):
print("开始执行....")
# 调用被扩展的函数
result=old(*args,**kwargs)
print("执行结束....")
# 返回函数的执行结果
return result
# 返回新函数
return new_function

@begin_end
def say_hello():
print('hello')

say_hello()
posted @ 2020-02-21 18:01  死磕战队  阅读(235)  评论(0编辑  收藏  举报