如何在Python中获取函数的名称(以及它的模块)?
作者:互联网
试图在Python中获取函数的全名. this question about function names指定应使用__name__字段来获取函数名称.但是,对于这种特殊情况,需要全名:包含它的模块加上函数的名称.
这样做的目的是通过同一项目中的不同程序访问功能.
例:
# file /my/project/funcs.py
def fun_1(a):
...
# Looking for a function like this:
def get_fun_name(function):
...
>>> get_fun_name(fun_1)
my.project.funcs.fun_1
正如您所看到的,理想的答案是打印出hte模块以及作为参数提供的函数对象的功能.
非常感谢!任何帮助肯定会受到赞赏!
解决方法:
怎么样
def get_fun(fn):
return '.'.join([fn.__module__, fn.__name__])
(参见例如http://docs.python.org/2/reference/datamodel.html)
标签:python,function,module,python-import,introspection 来源: https://codeday.me/bug/20190825/1719623.html