我有一个目录结构
├── 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解决引用?
当前回答
如果在Python文件名中使用破折号,也会出现此问题,因此强烈不建议这样做。
其他回答
通常,$PYTHONPATH用于教python解释器查找必要的模块。PyCharm需要在Preference中添加路径。
手动添加它确实是一种方法,但是有一种更简单的方法,那就是简单地告诉pycharm您想要添加src文件夹作为源根,然后将源根添加到您的python路径。
这样,你就不必在解释器的设置中硬编码:
添加src作为源内容根:
然后确保在PYTHONPATH下面添加add sources: 首选项~构建、执行、部署~控制台~ Python控制台
现在进口问题将得到解决:
通过这种方式,您可以添加任何您想要的源根,并且事情将简单地工作。但是,如果你没有将它标记为源根,你会得到一个错误:
完成所有这些后,不要忘记重新启动。在PyCharm菜单中选择:File——> Invalidate Caches / Restart
很多时候发生的事情是插件没有安装。如。
如果你正在开发一个django项目,并且pyCharm中没有安装django插件,它会显示错误“unresolved reference”。 参考: https://www.jetbrains.com/pycharm/help/resolving-references.html
如果你有python解释器不安装的问题,请注意 包,只需更改文件夹PycharmProjects的权限 C: \用户'username \ PycharmProjects 致每一个人
请检查您是否使用了正确的解释器。我得到错误“未解决的引用'django'”来解决这个问题,我从项目设置中更改了项目解释器(更改Python 3到Python 2.7): 选择项目,进入文件->设置->项目:->项目解释器->眉毛并选择正确的版本或解释器(例如/usr/bin/python2.7)。