检索python模块路径?

  • 回答 (2)
  • 关注 (0)
  • 查看 (65)

我想检测模块是否已经改变。现在,使用inotify很简单,你只需要知道你想从中获取通知的目录。

如何检索python模块的路径?

akjok54akjok54提问于
钟金平

红客学院 · 创始人 (已认证)

道可道 非常道 名可名 非常名回答于

inspectpython中有模块。

官方文件

检查模块提供了几个有用的功能来帮助获取有关活动对象的信息,如模块,类,方法,函数,回溯,框架对象和代码对象。例如,它可以帮助您检查类的内容,检索方法的源代码,提取并格式化函数的参数列表,或获取显示详细回溯所需的所有信息。

例:

>>> 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'
MyLove回答于
import a_module
print a_module.__file__

实际上会给你加载的.pyc文件的路径,至少在Mac OS X上。所以我想你可以做

import os
path = os.path.dirname(amodule.__file__)

你也可以试试

path = os.path.abspath(amodule.__file__)

获取目录以查找更改。

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励