【发布时间】:2017-09-16 07:28:56
【问题描述】:
我想打印my_func 的源代码,由my_decorator 包装:
import inspect
from functools import wraps
def my_decorator(some_function):
@wraps(some_function)
def wrapper():
some_function()
return wrapper
@my_decorator
def my_func():
print "supposed to return this instead!"
return
print inspect.getsource(my_func)
但是,它会返回包装器的源代码:
@wraps(some_function)
def wrapper():
some_function()
有没有办法让它打印以下内容?
def my_func():
print "supposed to return this instead!"
return
请注意,以上内容是从一个更大的程序中抽象出来的。当然我们可以在这个例子中去掉装饰器,但这不是我想要的。
【问题讨论】:
标签: python decorator python-2.x python-decorators