我发现了一些相似的问题,但并没有完全解决我的问题(例如PATH issue with pytest 'ImportError: No module named YadaYadaYada')
我的项目结构如下:
MyApp
|
+--MyApp
| |
| +--__init__.py
| +--app.py
| +--config.py
|
+--tests
|
+--__init__.py
+--test_app.py
在我的test_app.py中我导入了app.py,这很好用。
from MyApp import app
但在app.py中我导入config.py就像这样。
import config
通过此设置,我可以运行app模块,但pytest无法导入' config'并加注:
ImportError: No module named 'config'
pytest成功
from MyApp import config
但是,当我尝试运行应用程序时出现错误:
ImportError: No module named 'MyApp'
通过阅读其他问题,我确信PYTHONPATH
存在问题,我无法弄清楚如何解决这个问题。
答案 0 :(得分:2)
将PYTHONPATH变量设置为项目的根文件夹,并设置相对于此的所有其他路径
在同一文件夹中使用
导入模块
如果从其他文件夹引用,请使用
来自模块导入类
如上所述更改项目中的引用,应该解决