[英]Referring to Hydra's `conf` directory from a Python sub/sub-sub-directory module
[英]Importing modules from a “sub-sub-directory” in Python 3
我有一个目录树,看起来像以下内容(使用tree可视化):
.
├── __init__.py
└── testsubdir
├── __init__.py
└── testsubsubdir
├── __init__.py
└── __init__.pyc
主目录中的__init__.py
包含命令import testsubdir
,而testsubdir
中的__init__.py
包含import testsubsubdir
。 我注意到的是,这在Python 2.7中有效,但在Python 3.5中无效:
kurt@kurt-ThinkPad:~/Documents/Scratch/testdir$ python __init__.py
kurt@kurt-ThinkPad:~/Documents/Scratch/testdir$ python3 __init__.py
Traceback (most recent call last):
File "__init__.py", line 1, in <module>
import testsubdir
File "/home/kurt/Documents/Scratch/testdir/testsubdir/__init__.py", line 1, in <module>
import testsubsubdir
ImportError: No module named 'testsubsubdir'
我正在努力将一些源代码从Python 2“翻译”到Python 3,其中包含与上述类似的import语句。 在Python 3中实现此目的的最佳方法是什么?
这个类似问题的答案建议使用相对导入:
在顶层__init__.py
:
from . import testsubdir
在testsubdir/__init__.py
:
from . import testsubsubdir
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.