我正在python中启动一个项目,现在的代码结构如下:
project/
__init__.py
a.py
b.py
mainA.py
utilities/
__init__.py
mainB.py
c.py
这些__init__文件都是空白的。
我想utilities/mainB.py作为一个程序运行(使用类似的东西python main.py),并且 mainB 需要导入a.py和b.py. 所以我尝试from .. import a了一些其他的方法,但都import失败了。错误信息是:
ValueError:尝试在非包中进行相对导入
那么问题来了:
- 如何修复
mainB.py它可以作为主程序运行? mainA.py现在可以作为主程序运行,它还可以导入a.py和b.py(使用import aandimport b)。我认为代码结构可能会变得更加复杂。说,如果mainA.py必须从中导入模块project/some/directory,我该怎么做?