在Python 3.2中导入类
在文件 foo.py 中,我想从文件 main.py 导入类 A,文件夹结构如下:
main.py
__init__.py
|-folder1
__init__.py
|-folder 2
__init__.py
foo.py
|-folder 3
...
那我该怎么写导入的那一行呢?我试过一些写法,比如:
from ..main import A
但是我只得到了
ValueError: Attempted relative import in non-package
1 个回答
2
这个错误是因为你运行文件的方式不对。如果你想使用相对导入,你需要这样运行你的 foo 程序:
>>> import topfolder.folder1.folder2.foo
>>> foo.run()
换句话说,你需要把你导入的包结构当成一个真正的包来处理。