1
| foo
| main.py
|---- one
| | __init__.py
|------ two
| | __init__.py
考慮位於foo/one/two/__init__.py
中的__init__.py
文件。 在這個文件中,我想打印模塊路徑:從python項目中檢索模塊路徑的最佳方式是什麼?
foo/one/two/
什麼是最好的方法呢?
| foo
| main.py
|---- one
| | __init__.py
|------ two
| | __init__.py
考慮位於foo/one/two/__init__.py
中的__init__.py
文件。 在這個文件中,我想打印模塊路徑:從python項目中檢索模塊路徑的最佳方式是什麼?
foo/one/two/
什麼是最好的方法呢?
每個模塊將具有__name__
屬性,該屬性將爲您提供模塊的點語法屬性名稱。例如:
from one import two
print two.__name__
這應該產生:
import os.path
from one import two
print two.__name__.replace('.', os.path.sep)
這將打印(在Linux/Unix等):
one.two
然後,您可以簡單地與相關文件分體更換點:
one/two
或風行:
one\two
from foo.one import two
print two.__file__
ImportError:沒有名爲foo.one的模塊 – 2011-05-04 14:06:42