Visual Studio Code:Intellisense无法工作

109

我的Visual Studio Code的智能感知没有正常工作。每次我尝试使用 Ctrl + Shift 时,它只显示一个加载消息。我正在使用Python(带有Django)并已安装了ms-python.python。 我还安装了Djaneiro。但是它仍然无法正常工作。 enter image description here

这里似乎存在什么问题?


相关链接:https://github.com/Microsoft/vscode-python/issues/423 - sshashank124
看起来你正在使用Python 3.7,请确认一下? 这个扩展还不支持那个版本。 - vijesh
我正在使用 Python 3.6。 - Donovan Keating
1
对我来说,大多数时间都能正常工作。但是随着我的文件变得越来越大(大约500行以上),速度变得非常慢,有时可能需要超过一分钟才能显示建议。因此,我尝试保持我的视图和模型较小,但这并不总是可能的 :( - Vaibhav Vishal
你能否更明确地提出问题?你的问题是关于你自己的软件包还是像pytorch、tensorflow、numpy等其他人的软件包? - Charlie Parker
显示剩余2条评论
34个回答

3

1
是的,重启对我有用。有时候问题很简单。 - james-see

2

在我的情况下,Pylance一直停留在 Loading... ,因为工作区包含了太多的文件(大型数据集和许多日志文件)。在检查Python语言服务器日志后:

Enumeration of workspace source files is taking longer than 10 seconds.

解决方案

在您的工作区根目录下添加一个pyrightconfig.json文件,并创建一个要从Pylance搜索中排除的目录列表(参见https://github.com/microsoft/pyright/blob/main/docs/configuration.md):

{
  "exclude": [
    "**/data",
    "**/.crash_reports",
    "**/runs",
    "**/wandb",
    "**/notebooks",
    "**/models",
    ".git"
  ]
}

重新启动语言服务器


2

我发现了一种略有不同的解决方法。

  1. 禁用 Pylance 扩展
  2. 安装 Pyright 扩展
  3. 重新启动 VS Code

大功告成!现在我可以得到所有我需要的建议。


2

我的设置都没问题,但是仍然无法自动完成。 我禁用了Kite扩展和其他几个我不需要的扩展,IntelliSense开始自动完成。 不能100%确定,但我认为可能是我的“Kite”扩展设置妨碍了自动完成。


2

我有这个问题已经有一段时间了。我尝试了很多来自Stack的解决方案,但没有一个起作用。对我来说,卸载所有扩展程序就解决了这个问题。


1

我刚刚在扩展中禁用了Pylance,建议功能立即恢复正常。


1
我已经尝试了此页面上其他人列出的几乎所有方法,但对我都没用。我使用的是Anaconda版本的Python。
最终,让VS Code中的Python智能感知开始工作的方法是:
  1. 打开终端(视图菜单=> 终端)
  2. 输入conda init powershell
  3. 重新启动VS Code
之后,Python智能感知就可以正常工作了。

1

我之前也遇到过这个问题,真的很烦人。这是 VS Code 的一个主要 bug,会在安装某些 npm 包时发生。由于新包的模块未能成功加载,VS Code IntelliSense 会在你启动 VS Code 几分钟后崩溃并停止工作。

在我的情况下,通过使用 VS Code Insiders 版本解决了这个问题:https://code.visualstudio.com/insiders/

下载并安装 VS Code Insiders,安装所有你使用的扩展程序,然后检查问题是否已经解决。


1
去Vs code设置>搜索"languageserver"不要加空格! python LanguageServer>将其更改为>Pylance 完成了,现在它可以工作了 我认为Pylance是Python扩展的默认服务器,所以大多数时候都能正常工作。

确切的。这在我的设置中被设为"None"。 "python.languageServer": "None" - saumilsdk

1

配置类型检查模式:

在您的settings.json文件中,添加以下设置的新行:

"python.analysis.typeCheckingMode": "basic"

此行的默认值为off,表示静态分析被禁用。您还有两个可能的值,即basic和strict。 basic模式启用基本的类型检查规则,而strict模式以最高错误严重性启用所有类型检查规则。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接