关于 python __doc__ 文档字符串
我想显示我的函数的文档字符串, 但如果我这样使用
@cost_time
def func():
"define ...."
blabla
print func.__doc__
它不会显示文档字符串,只是因为我使用了一些元编程技巧, 如何解决这个问题?
i want to show docstring of my function,
but if i use like this
@cost_time
def func():
"define ...."
blabla
print func.__doc__
it will not show the docstring,just because i use some meta programming tricky,
how can fix this?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
使用
functools.wraps()
。Use
functools.wraps()
.从
cost_time
装饰器返回的包装函数必须具有文档字符串,而不是func
。因此,正确使用functools.wraps
设置__name__
和__doc__
:Your wrapped function returned from the
cost_time
decorator must have the docstring instead offunc
. Therefore, usefunctools.wraps
which correctly sets__name__
and__doc__
: