在PyCharm编辑器中,我有一个名为project3
的python应用程序,其目录结构如下。文件load.py
只有一个函数(不是类py文件)def read():
,mip.py
是py类文件,并且有自己的函数方法。
Project
|
+---- project1
|
+---- project2
|
+---- project3
|
+---- cnn.py
+---- load.py
+---- mip.py
在cnn.py
中,我想导入我打算使用的load
和mip
文件。我的导入代码如下;
import load
from mip import f1
但我收到错误:
No module named load
Unresolved reference 'mip'
答案 0 :(得分:3)
在pycharm中,您必须添加project3
(以及包含模块的任何其他目录)作为包含源的根。
右键单击project3
目录,然后在上下文菜单中选择:将目录标记为> 来源根
答案 1 :(得分:1)
A similar question得到了解答,由于我对PyCharm没有太多经验,所以我会避免评论你应该如何在IDE中进行评估。
相反,我会按照the package docs:
的方向推荐您需要
__init__.py
个文件才能使Python将目录视为包含包;这样做是为了防止具有通用名称的目录(例如字符串)无意中隐藏稍后在模块搜索路径上出现的有效模块。
最简单的解决方案是在同一目录中添加名为__init__.py
的空白文件:
在最简单的情况下,
__init__.py
可以只是一个空文件,但它也可以执行包的初始化代码或设置__all__
变量,稍后将对此进行描述。
在IDE中,您可以通过在项目中创建一个新文件,命名为__init__.py
并保存它,然后重新启动PyCharm来实现此目的。
如果您想使用python模块和软件包做更复杂的事情(或只是阅读),您可以看到distutils
。
答案 2 :(得分:0)
我有类似的问题,我在目录的 init .py文件中添加了文件,现在工作正常。