Python:'ImportError:没有命名模块 “

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python:'ImportError:没有命名模块 “相关的知识,希望对你有一定的参考价值。

我正在使用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

我已经阅读了很多其他SO帖子,谈论在所有目录中都需要一个init.py文件(我已经完成了)。许多人还建议搞乱sys.path。后一种方法的问题在于我以前从未涉及过这些路径。我不确定它是否因我的开发环境设置而发生变化,但现在它是:

Python 2.7 | macOS Sierra | PyCharm CE

我曾尝试使用virtualenv安装虚拟环境,但没有看到任何区别。以下是github的示例项目,如果您想自己运行它

答案

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

另一答案

我认为如果将运行配置中的工作目录更改为test_python,它将起作用。 import语句中的所有包都与Python路径中的某些条目相关,而工作目录通常位于Python路径中。

以上是关于Python:'ImportError:没有命名模块 “的主要内容,如果未能解决你的问题,请参考以下文章

Python ImportError: No module named 'requests'解决方法

Python运行Queue报错ImportError: cannot import name 'Empty'

windows下 python中报错ImportError: No module named 'requests'

python3 与 Django 连接数据库报错:ImportError: No module named 'MySQLdb'

Python:'ImportError:没有命名模块 “

Python语言importError:cannot import name 'InvalidArgumentException'报错的解决方法: