Skip to main content
 首页 » 编程设计

python之在导入模块后的 python 中,有没有办法找到它是从哪个物理文件加载的

2025年05月04日19tintown

我想我的数学包出了问题,我想确保我正在加载正确的模块。如何在 python 中检查加载模块的物理文件位置?

请您参考如下方法:

使用 __file__ 属性:

>>> import numpy 
>>> numpy.__file__ 
'/usr/lib/python2.7/dist-packages/numpy/__init__.pyc' 

请注意,用 C 编写并静态链接到解释器的内置模块没有此属性:

>>> import math 
>>> math.__file__ 
Traceback (most recent call last): 
  File "<stdin>", line 1, in <module> 
AttributeError: 'module' object has no attribute '__file__' 

获取文件路径的另一种方法是使用 inspect.getfile .如果传递的对象是内置模块、类或函数,它会引发 TypeError。

附带说明一下,您应该避免使用与语言内​​置或标准库模块冲突的名称。因此,我建议您将 math 包重命名为其他名称,或者,如果它是 mypackage.math 等包的一部分,则避免直接导入它并请改用 mypackage.math。