PyCharm/IntelliJ中的红色下划线(未解析的引用)停止了我的一些Anaconda项目

2024-04-25 23:30:31 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在IntelliJ Ultimate上使用PyCharm(Python插件)

通常IDE会用红色下划线突出显示任何未定义的标识符,但我注意到在某些项目中,此功能会停止工作

红色下划线非常有用,因为它们允许我使用IntelliJ的自动修复(例如导入或创建缺少的函数/类)

我能想到的几乎所有其他PyCharm功能似乎仍在发挥作用。例如,AutoComplete工作得很好

有时,如果我将项目的SDK设置为,然后将其设置回正确的Python解释器,那么项目将开始正确地突出显示NameErrors。这似乎并不总是奏效。我正在使用Conda,我已经尝试将Conda envs设置为普通的virtualenvs或“系统解释器”

我搜索了日志文件,看不到任何可能表明插件未能初始化的内容

在大多数情况下(除了系统短暂决定工作时),我没有得到红色下划线,但所有其他PyCharm功能似乎都正常工作。此外,这似乎只会影响Python:Scala和Java代码的行为与您在IntelliJ中所期望的完全相同

有办法调试这个吗?怎么了?我怎么修理它

Auto-complete is still working, but the red underline on nonsense code is missing

Unresolved References inspection is switched on


Tags: 项目函数功能插件系统标识符ide解释器
1条回答
网友
1楼 · 发布于 2024-04-25 23:30:31

我也遇到过你描述的同样的问题。根据描述,原因是您启用了"Reader Mode"

Normally the IDE highlights any undefined identifiers with a red-underline, but I've noticed that on some projects this feature stops working.

对于当前安装在项目虚拟环境或解释器中的模块,错误的红色下划线/涂鸦被抑制。(这是有意义的,因为如果出于某种原因,您希望从已安装的库中读取代码,那么通常不必担心库作者是否出错,或者库代码是否根据您的代码样式设置发出警告等。)

Sometimes if I set the project's SDK to , and then set it back to the correct Python interpreter the project starts to highlight NameErrors correctly.

如果将project SDK更改为未安装模块的解释器,则会再次显示错误。您可以在启用读卡器模式的情况下,通过检查File{}{}{}{}{}{}{}{{}}{}处的选项来设置错误的显示。如屏幕截图所示

screenshot PyCharm reader mode

如果禁用读卡器模式,IDE也会像往常一样再次发出错误

相关问题 更多 >