【发布时间】:2012-08-29 07:22:09
【问题描述】:
我在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 a和import b)。 我认为代码结构可能会变得更加复杂。比如说,如果mainA.py必须从project/some/directory导入一个模块,我该怎么做?
【问题讨论】:
标签: python import code-organization