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


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


当前回答

其他答案所建议的无效缓存对我不起作用。在我的案例中,我发现的问题是PyCharm将Python包的init.py文件标记为文本,因此没有将它们包括在分析中,这意味着Python解析无法正确工作。

我的解决方案是:

打开PyCharm设置 导航到编辑器->文件类型 找到Python并将__init__.py添加到Python文件列表中 或查找文本并从文本文件列表中删除__init__.py

其他回答

在我的情况下,检查错误显示由于一个非常具体的python代码的情况。 包含两个numpy函数和两个列表访问的min函数会使我的代码检查给出这种错误。

在下面的例子中删除'd=0'行会像预期的那样给出一个无法解决的引用错误,但是读取代码检查器并不能消除这个错误。之后我仍然可以毫无问题地执行代码。

import numpy as np
def strange(S, T, U, V):
    d = 0
    print min(np.abs(S[d]), np.abs(T[d]), U[d], V[d])

清除缓存和重新加载路径列表不工作。只有使用以下示例补丁之一更改代码才能工作:

“min”参数的另一种顺序:简图上的S U T V,但不是S T U V或T S U V 使用方法而不是函数:S[d].abs()而不是np.abs(S[d]) 使用内置的abs()函数 将一个数字添加到所选参数:U[d] + 0。

我也有同样的症状在我的例子中,问题的来源是我设置的 自定义属性中的Idea.max.intellisense.filesize =50。 我可以把它设为100。

帮助->编辑自定义属性

你在使用virtualenv吗?

如果是这样,你需要通知PyCharm所需的python.exe位置的每一次更改(仅./activate对PyCharm来说是不够的)。

确保Pycharm指向正确的解释器和包: 文件->设置->项目->项目解释器。单击齿轮并在virtualenv的脚本文件夹下选择python.exe

我有一个项目,其中一个文件在src/导入另一个文件在同一目录。要让PyCharm识别,我必须去文件>设置>项目>项目结构>选择src文件夹,然后点击“标记为:源”

从https://www.jetbrains.com/help/pycharm/configuring-folders-within-a-content-root.html

源根包含实际的源文件和资源。PyCharm使用源根作为解析导入的起点

更简单的操作:

>文件设置>项目>项目解释器 在“项目解释器”列表中选择“无解释器” 应用>重新设置python解释器>单击“应用”

Profit - Pycharm正在更新骨架,一切正常。