我正在使用PyCharm在一个项目上工作。使用解释器打开并配置该项目,并可以成功运行。远程解释器路径映射正确。这似乎是正确的配置,但PyCharm突出显示了带有“未解决的引用”错误的有效代码,甚至对于内置的Python函数也是如此。为什么即使代码运行,这些似乎也没有被检测到?有没有什么方法可以让PyCharm正确识别这些?


此问题的具体实例是远程解释器,但本地解释器也会出现此问题。


当前回答

在所有建议的解决方案都不适合我之后,我终于让它工作了。我正在玩一个django rest框架项目,并使用了我已经设置好的virtualenv。我可以通过将根文件夹标记为源根来修复Pycharm,但是django的服务器会抛出解析异常。所以一个会工作,而另一个不会,反之亦然。

最终,我只需要将子文件夹标记为pycharm中的源代码根。我的结构是这样的

-playground
     -env
     -playground

第二个playground文件夹是我必须标记为源代码根以便一切正常工作的文件夹。这在我的场景中没有出现任何问题,所以这是一个可行的解决方案。

我只是想分享一下,以防别人用。

其他回答

当失效缓存或刷新路径不起作用时,我发现自己删除并重新添加远程解释器来修复这个问题。

我使用vagrant,每隔一段时间,如果我添加一个新的虚拟机到我的多虚拟机设置,转发的端口改变,这似乎使PyCharm混淆,当它试图使用错误的SSH端口时。更改端口似乎并不能帮助损坏的引用。

德米特里的回答对我不起作用。

我打开Project Interpreters,选择“Paths”选项卡,然后点击子菜单中的刷新按钮。它自动填充了一种叫做“蟒蛇骨架”的东西。

编辑:使用PyCharm 3.4.1截图(它隐藏得很好)

很抱歉打断这个问题,但是我有一个重要的更新要做。

如果你使用的是Python 2.7.6以外的版本,你可能还想把你的项目解释器恢复到Python 2.7.6。在我安装PyCharm 4.04 professional时,这对我来说很有效,因为其他的建议都不能解决我的问题。

也可能是python版本问题。我得选对人,才行。

在所有建议的解决方案都不适合我之后,我终于让它工作了。我正在玩一个django rest框架项目,并使用了我已经设置好的virtualenv。我可以通过将根文件夹标记为源根来修复Pycharm,但是django的服务器会抛出解析异常。所以一个会工作,而另一个不会,反之亦然。

最终,我只需要将子文件夹标记为pycharm中的源代码根。我的结构是这样的

-playground
     -env
     -playground

第二个playground文件夹是我必须标记为源代码根以便一切正常工作的文件夹。这在我的场景中没有出现任何问题,所以这是一个可行的解决方案。

我只是想分享一下,以防别人用。