1

python __doc__ docstring についてかなり関連しています。functools を使用せず、ラッパーを使用する場合は、「関数自体から python 関数の Docstring を印刷する方法」で説明されているように? 、docstringを印刷する方法はありますか。

def passmein(func):
    def wrapper(*args, **kwargs):
        return func(func, *args, **kwargs)
    return wrapper

@passmein
def testfunc(me):
    """This is a test function"""
    #print me.__doc__

if __name__ == '__main__':
    print testfunc.__doc__

これは何も返しません。

4

1 に答える 1

3

を使用したくない理由はわかりませんが、自分自身functools.wrapsに doc 文字列を追加できます。wrapper

def passmein(func):
    def wrapper(*args, **kwargs):
        return func(*args, **kwargs)
    wrapper.__doc__ = func.__doc__
    return wrapper

@passmein
def testfunc(me):
    """This is a test function"""

if __name__ == '__main__':
    print testfunc.__doc__
于 2013-08-09T17:52:28.417 に答える