使用 PyCharm,我有一个 SMTP 解析器项目,其结构如下:
- SMTP
- Classes
- Models
- Transformers
- Tests
在Tests
我从SMTP.Classes.Transformers
这样引用类:
from SMTP.Classes.Transformers.myclass import MyClass
这有效并且我的单元测试运行正常。
但是,我现在添加了一个代理文件myProxy.py
:
- SMTP
- Classes
- Models
- Transformers
- Tests
- myProxy.py
在myProxy.py
我尝试导入我的课程时,就像上面一样:
from SMTP.Classes.Transformers.myclass import MyClass
当我输入 时from S
,PyCharm 实际上会建议SMTP
,当我写出来时,它没有显示任何错误。我什至可以myProxy
在 PyCharm 中使用“运行”按钮启动。
但是,当我尝试myProxy.py
从控制台运行时,ModuleNotFoundError: No module named 'SMTP'
当我SMTP
从每个受影响的文件中删除部件时,我可以从控制台运行它。它甚至可以在 PyCharm 上运行。但是,出于某种原因,PyCharm 确实将我的导入强调为错误。
这里的错误究竟是什么,我该如何解决它以便我在 PyCharm 中没有错误并且可以在 pycharm 和控制台上运行我的程序?
您可以尝试省略SMTP
,而只是Classes
在 PyCharm 中标记为 Sources Root,方法是:右键单击Classes
目录 >将目录标记为 > Sources Root。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句