如何检索模块的路径?
我想检测模块是否已更改。现在,使用inotify很简单,您只需要知道要从中获取通知的目录即可。
如何在python中检索模块的路径?
我想检测模块是否已更改。现在,使用inotify很简单,您只需要知道要从中获取通知的目录即可。
如何在python中检索模块的路径?
import a_module
print(a_module.__file__)
实际上会给你加载的.pyc文件的路径,至少在Mac OS X上是这样。所以我想你可以做到:
import os
path = os.path.abspath(a_module.__file__)
您还可以尝试:
path = os.path.dirname(a_module.__file__)
获取模块的目录。
python中有模块。inspect
inspect 模块提供了几个有用的函数来帮助获取有关实时对象(如模块、类、方法、函数、回溯、框架对象和代码对象)的信息。例如,它可以帮助您检查类的内容,检索方法的源代码,提取函数的参数列表并设置其格式,或者获取显示详细回溯所需的所有信息。
例:
>>> import os
>>> import inspect
>>> inspect.getfile(os)
'/usr/lib64/python2.7/os.pyc'
>>> inspect.getfile(inspect)
'/usr/lib64/python2.7/inspect.pyc'
>>> os.path.dirname(inspect.getfile(inspect))
'/usr/lib64/python2.7'