我有一个目录结构

├── simulate.py
├── src
│   ├── networkAlgorithm.py
│   ├── ...

我可以使用sys.path.insert()访问网络模块。

import sys
import os.path
sys.path.insert(0, "./src")
from networkAlgorithm import *

但是,pycharm抱怨它无法访问该模块。我如何教pycham解决引用?


当前回答

在遵循公认的答案后,做以下的事情为我解决了这个问题:

文件→设置→项目<您的目录/项目>→项目依赖项

选择未解决导入的文件所在的目录/项目,并选中复选框,告诉Pycharm该项目依赖于您的其他项目。

我的文件夹层次结构与问题中的略有不同。我的是这样的

├── MyDirectory  
│     └── simulate.py  
├── src  
│     ├── networkAlgorithm.py  
│     ├── ...

告诉Pycharm src依赖MyDirectory解决了我的问题!

其他回答

在测试了所有的解决方案后,我建议你看看设置->项目->项目依赖项,并重新安排它们。

通常,$PYTHONPATH用于教python解释器查找必要的模块。PyCharm需要在Preference中添加路径。

在PyCharm 2019.3.1中完成 右键单击src文件夹->“标记目录为”->单击“排除”,您的src文件夹应该是蓝色的。

在我的情况下,问题是我使用的虚拟环境,没有访问全局站点包。因此,解释器不知道新安装的包。

要解决这个问题,只需编辑或重新创建虚拟解释器,并勾选“继承全局站点包”选项。

通过PyCharm安装(适用于社区版)。打开设置>项目>项目解释器,然后点击下面截图中的绿色+图标。在打开的第二个对话框中,输入软件包名称并单击“Install package”按钮。