我想获取正在修饰的函数的原始文件/脚本名等。我怎样才能做到这一点?
def decorate(fn):
def wrapped():
return "scriptname: " + fn.scriptname?
return wrapped
我尝试使用 fn.__code__
但这给了我更多我需要的东西。我可以解析该字符串以获取函数名称,但想知道是否有更优雅的方法来做到这一点
最佳答案
import inspect
inspect.getfile(fn)
这不适用于 builtin functions不过,对于这些,您必须回退到 inspect.getmodule
。
关于python - 如何获取在 python 中传递给我的装饰器的函数的文件名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12152911/