| foo
| main.py
|---- one
| | __init__.py
|------ two
| | __init__.py
考虑位于__init__.py
的{{1}}文件。
在这个文件中,我想打印模块PATH:
foo/one/two/__init__.py
最好的方法是什么?
答案 0 :(得分:3)
每个模块都有一个__name__
属性,它将为您提供模块的点语法属性名称。 e.g:
from one import two
print two.__name__
这应该产生:
one.two
然后您可以使用相关文件分隔符替换点:
import os.path
from one import two
print two.__name__.replace('.', os.path.sep)
这将打印(在Linux / Unix等上):
one/two
或在Windows上:
one\two
答案 1 :(得分:1)
from foo.one import two
print two.__file__