蟒蛇:'ImportError: No Module Named <my module>'



我正在使用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安装虚拟环境,但没有看到差异。如果您想自己运行

,这是GitHub上的示例项目

看来文件夹深度存在问题。替换from ../config import app_config

我认为,如果将运行配置的工作目录更改为 test_python,它将有效。导入语句中的所有软件包都相对于您的Python路径中的某些条目,并且工作目录通常位于Python路径中。

最新更新