Ram*_*hum 3 python import relative-path
我有这个文件夹结构:
package/
__init__.py
misc/
__init__.py
tools.py
subpackage/
__init__.py
submodule.py
Run Code Online (Sandbox Code Playgroud)
我在submodule.py,我想导入misc.tools.我不想使用绝对导入来导入package.misc.tools,因为那时我的包只能在PYTHONPATH上使用.所以我想使用相对导入.但是,我还想要导入的名称misc.tools,而不仅仅是tools.
可能吗?
关于什么...:
from .. import misc
from ..misc import tools as _
print misc.tools.__file__
Run Code Online (Sandbox Code Playgroud)
这misc.tools可以作为print确认,并使用正确的名称和内容.
不可避免地,它也将同一个模块绑定到一些名字 - 我选择_了一个典型的"丢弃的名字",但当然你可以del _在那之后,如果你愿意,那不会影响misc.tools.
而且,任何其他属性misc集的__init__.py(或特有tools.py)将是可用的,但是呢,如果barename misc本身是可用的(因为它必须是如果化合物名称misc.tools是必需的),那么这是不可避免的,它将拥有所有属性它建立为自己(或从其他代码执行外部构建).
| 归档时间: |
|
| 查看次数: |
552 次 |
| 最近记录: |