我有一个目录结构
├── 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解析参考文献?
Answers:
手动将其添加为你所做的确实这样做的一种方式,但有一个简单的方法,那就是通过简单地告诉pycharm要在添加src
文件夹作为源根目录,然后添加源根你的Python路径。
这样,您就不必将代码硬编码到解释器的设置中:
src
为源内容根:
PYTHONPATH
:
这样,您可以将任何所需的内容添加为源根,一切将简单地进行。但是,如果未将其标记为源根,则会出现错误:
毕竟,别忘了重新启动。在PyCharm菜单中,选择:文件->使缓存无效/重新启动
src
,我们有一个views
文件夹myview.py
,我尝试在其中时仍然收到未解决的引用错误from src.views.myview import <my_function>
。
__init__.py
文件src
夹文件src
文件夹为源根PYTHONPATH
(见上文)测试完所有变通办法之后,建议您Settings -> Project -> project dependencies
重新看看并重新安排它们。
pygame
在那里,没有更多未解决的参考问题!
通常,$ PYTHONPATH用于教python解释器查找必要的模块。PyCharm需要在“首选项”中添加路径。
遵循接受的答案后,请执行以下操作为我解决此问题:
File
→交通Settings
→交通Project <your directory/project>
→交通Project Dependencies
选择您的未解析导入文件所在的目录/项目,并选中相应的框以告知Pycharm该项目取决于您的其他项目。
我的文件夹层次结构与问题中的文件夹层次结构略有不同。我的就是这样
├── MyDirectory
│ └── simulate.py
├── src
│ ├── networkAlgorithm.py
│ ├── ...
告诉Pycharm src依赖于MyDirectory
我,此问题已解决!
尽管所有答案都确实有帮助,但是应该明确解释其中一小部分信息:
.py
文件的目录并创建一个__init__.py
(空)文件。之所以有帮助,是因为该文件是使Python将目录视为包含包所必需的。干杯!
很多时候发生的事情是没有安装插件。例如
如果您正在开发django项目,并且在pyCharm中未安装django插件,则会显示错误“未解决的引用”。请参阅:https : //www.jetbrains.com/pycharm/help/resolving-references.html
在较新版本的pycharm中,您可以简单地执行以下操作:右键单击要从中导入文件的目录或python包,然后单击“将目录标记为”->“源根”
解决此问题的最简单方法是在pyCharm软件中执行以下操作:
单击:文件>设置>(项目:您的项目名称)>项目解释器>
然后单击右侧的“ +”图标以搜索所需的软件包并安装。
享受编码!
__init__.py
文件吗?