我正在使用pycharm ce开发一个类似于以下结构的项目:
test_python/
|-- app
| |-- __init__.py
| |-- mymodule.py
| |-- mymodule.pyc
| `-- test_mymodule.py
|-- config.py
`-- tests
|-- __init__.py
|-- test_config.py
`-- test_models.py
当我尝试运行诸如test_config.py之类的测试脚本时,我会得到:
$ python tests/test_config.py
Traceback (most recent call last):
File "tests/test_config.py", line 1, in <module>
from config import app_config
ImportError: No module named config
我读了很多其他文章,这些帖子谈论需要在所有目录的包装中需要 init .py文件(我已经完成了)。许多人还建议与sys.path
混在一起。我对后一种方法的问题是,我从来不必介入以前的道路。我不确定我的开发环境设置是否会发生变化,但是这里是:
Python 2.7 |Macos Sierra |Pycharm CE
我尝试使用Virtualenv安装虚拟环境,但没有看到差异。如果您想自己运行
看来文件夹深度存在问题。替换from ../config import app_config
。
我认为,如果将运行配置的工作目录更改为 test_python
,它将有效。导入语句中的所有软件包都相对于您的Python路径中的某些条目,并且工作目录通常位于Python路径中。