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


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


当前回答

如果你只想忽略一些“未解决的引用”错误,你也可以通过在你的类/方法/函数前显式地告诉它PyCharm:

# noinspection PyUnresolvedReferences

其他回答

@kelorek适用于我,但之前,在interpereter路径中,我必须添加一些路径。 让说

from geometry_msgs.msg import Twist

下划线为错误,然后在远程机器中运行python:

help("geometry_msgs")

在最后会有路径,我们说:

/opt/ros/foxy/lib/python3.8/site-packages/geometry_msgs/__init__.py

所以你的解释器pycharm路径添加

/opt/ros/foxy/lib/python3.8/site-packages

希望它能帮助你,也帮助我:)

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

我的解决方案是:

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

如果你正在使用vagrant,这个错误可能是由错误的python解释器引起的。 在我们的vagrant中,我们使用pyenv,所以我必须将Python解释器的路径路径从/usr/bin/python更改为/home/vagrant/.pyenv/versions/vagrant/bin/python

没有一个答案能解决我的问题。

对我来说有用的是切换环境,然后回到相同的环境。文件- >设置- >项目翻译

我使用conda环境。

如果其他解决方案都不适合您,请尝试(备份)并删除~/。PyCharm40文件夹,然后重新打开PyCharm。这也会杀死你所有的偏好设置。

在Mac上,你需要删除~/Library/Caches/Pycharm40和~/Library/Preferences/ Pycharm40。

Windows: C:\Users\$USER.PyCharm40。