我正在以编程方式在python中打印出一个函数列表。 我可以从名称
获取名称for ifunc,func in enumerate(list_of_functions):
print(str(ifunc)+func.__name__)
如何获取定义函数的源文件名?
如果函数是对象的属性,如何获取父对象的类型?
可移植性python2 / 3是必须的
答案 0 :(得分:1)
如此处所述https://docs.python.org/3/library/inspect.html func.__globals__
返回定义函数的全局命名空间。
答案 1 :(得分:1)
func.__module__
将以定义的方式返回模块
func.__globals__['__file__']
将返回定义它的文件的整个路径。仅用于用户定义的函数
答案 2 :(得分:1)
如何获取定义函数的源文件名...?
import inspect
inspect.getfile(func)
如果函数是对象的属性,那么如何获取父对象的类型?
要获取方法的类(即,当函数是对象的属性时):
if inspect.ismethod(func):
the_class = func.__self__.__class__
答案 3 :(得分:0)
您可以使用__file__
变量。
print(__file__)
答案 4 :(得分:0)
获取文件名只需使用 -
print(os.path.basename(__file__))
如果您想要完整的文件路径,可以使用
print __file__