改变说明文档显示位置wrap

装饰器会改变文档的显示位置

例子1:使用wrap前,输出内函数中的说明文档

def check(fun):
    """检查权限的装饰器"""
    def inner(*args, **kwargs):
        """这里是闭包函数"""
        print("权限检查--1")
        fun(*args, **kwargs)

    return inner

@check
def foo1():
    '''这里是原始函数foo1的说明文档'''
    print("查看用户信息")

if __name__ == '__main__':
    print(foo1.__doc__)

 

 

 

 

例子2:使用wrap后,输出原始函数中的说明文档

import functools

def check(fun):
    """检查权限的装饰器"""
    @functools.wraps(fun)
    def inner(*args, **kwargs):
        """这里是闭包函数"""
        print("权限检查--1")
        fun(*args, **kwargs)

    return inner

@check
def foo1():
    '''这里是原始函数foo1的说明文档'''
    print("查看用户信息")

if __name__ == '__main__':
    print(foo1.__doc__)

 

 

posted @ 2019-07-05 11:46  安迪9468  阅读(136)  评论(0编辑  收藏  举报