最佳答案
我无论如何都不能让 python 的相对导入工作。我创建了一个简单的例子,说明它在哪些方面不起作用:
目录结构是:
__init__.py
start.py
parent.py
sub/
__init__.py
relative.py
/start.py只包含: import sub.relative
/sub/relative.py只包含 from .. import parent
其他文件都是空白的。
在命令行上执行以下命令时:
$ cd /
$ python start.py
我得到了:
Traceback (most recent call last):
File "start.py", line 1, in <module>
import sub.relative
File "/home/cvondrick/sandbox/sub/relative.py", line 1, in <module>
from .. import parent
ValueError: Attempted relative import beyond toplevel package
我正在使用 Python 2.6。为什么是这种情况? 我如何使这个沙盒示例工作?