我有一个目录结构
├── simulate.py
├── src
│ ├── networkAlgorithm.py
│ ├── ...
我可以使用sys.path.insert()访问网络模块。
import sys
import os.path
sys.path.insert(0, "./src")
from networkAlgorithm import *
但是,pycharm抱怨它无法访问该模块。我如何教pycham解决引用?
我有一个目录结构
├── simulate.py
├── src
│ ├── networkAlgorithm.py
│ ├── ...
我可以使用sys.path.insert()访问网络模块。
import sys
import os.path
sys.path.insert(0, "./src")
from networkAlgorithm import *
但是,pycharm抱怨它无法访问该模块。我如何教pycham解决引用?
当前回答
在新版本的pycharm中,只需右键单击想要导入文件的目录或python包,然后单击“标记目录为”->“源根”
其他回答
在我的例子中,使用Pycharm 2019.3,问题是我忘记向我想导入的文件添加扩展名“.py”。一旦添加,错误就会消失,而不需要使缓存无效或任何其他步骤。
如果在Python文件名中使用破折号,也会出现此问题,因此强烈不建议这样做。
在我的情况下,问题是我使用的虚拟环境,没有访问全局站点包。因此,解释器不知道新安装的包。
要解决这个问题,只需编辑或重新创建虚拟解释器,并勾选“继承全局站点包”选项。
最简单的解决方法是在pyCharm软件中执行以下操作:
点击:File > Settings > (Project: your Project name) > Project Interpreter >
然后点击右边的“+”图标,搜索你想要的软件包并安装它。
享受编码吧!!
在SRC文件夹中检查__init__.py文件 添加SRC文件夹作为源根目录 然后确保将源代码添加到PYTHONPATH(参见上面) 在PyCharm菜单中选择:File——> Invalidate Caches——> Restart