繁体   English   中英

Visual Studio 代码:智能感知不起作用

[英]Visual Studio Code: Intellisense not working

我的 Visual Studio Code 的 Intellisense 无法正常工作。 每次我尝试将它与Ctrl + Shift一起使用时,它只显示一条加载消息。 我正在使用 Python (使用 Django)并安装了ms-python.python 我也有Djaneiro 它仍然无法正常工作。 在此处输入图像描述

这里似乎有什么问题?

这可能由多种原因引起,其中一些原因如下。

  1. vscode中的Python可执行路径不正确

    • 解决方案:在settings.json配置 python 可执行文件的路径。 记得之后重启vscode。
  2. 模块位于非标准位置

    • 解决方案:配置settings.json以包含此位置以便自动完成工作。 用于为工作区添加自定义模块的示例(适用于 Linux):

       { "python.pythonPath": "/usr/bin/python", "python.autoComplete.extraPaths": [ "${workspaceFolder}/customModule" ] }
  3. vscode 不是从活动的虚拟环境中启动的

    • 解决方案:在激活虚拟环境时设置模块的路径。 从终端启动 vscode 并激活正确的虚拟环境

如果您已经尝试了所有方法但仍然无法正常工作,那么在我的情况下,使用Python扩展安装扩展Visual Studio IntelliCode可以正常工作。

首先,如果您在项目中安装了 virtualenv,请从那里运行 vscode。 然后在你的 vscode 设置中,我的意思是 settings.json,你可以按照我的配置或跟踪你有问题的地方。 大多数情况下,这个问题源于在 pythonPath 设置中放置了不正确的路径

    {
  "python.pythonPath": "${workspaceFolder}/env/bin/python3",
  "editor.formatOnSave": true,
  "python.linting.pep8Enabled": true,
  "python.linting.pylintPath": "pylint",
  "python.linting.pylintArgs": ["--load-plugins", "pylint_django"],
  "python.linting.pylintEnabled": true,
  "python.linting.pep8Args": ["--ignore=E501"],
  "files.exclude": {
    "**/*.pyc": true
  }
}

更新:

如果你想有Vscode的精心配置,我个人用于开发我的Django和阵营就可以一览无余Web应用

安装Pylance插件导致 Vscode Intellisense 停止。
在禁用 Pylance 并启用Default Microsoft Python extension以及Visual Studio IntelliCode(Microsoft)并恢复到Jedi server (由 Vscode 提示)时,重新启动了智能感知检测。

我更改更改:jedi true 2 false 或 flase 2 true,当重​​新加载 VSCode 时,没关系。

我的设置:

{
    "editor.fontSize": 16,
    "explorer.confirmDragAndDrop": false,
    "extensions.autoUpdate": false,
    "workbench.colorTheme": "Default Dark+",
    "editor.fontFamily": "Consolas, Dengxian",
    "workbench.sideBar.location": "left",
    "workbench.startupEditor": "newUntitledFile",
    "workbench.iconTheme": "material-icon-theme",
    "python.pythonPath": "d:\\Source\\Django\\Scripts\\python.exe",
    "python.linting.pylintEnabled": true,
    "python.linting.enabled": true,
    "git.ignoreLimitWarning": true,
    "python.jediEnabled": true,
    "python.autoComplete.extraPaths": [
        "d:\\Source\\Django\\",
    ],
    "python.autoComplete.addBrackets": true
}

对我来说,Intellisense 在处理 Python 文件时会停止随机工作。

我只是保存我的文件,关闭文件选项卡,然后我重新打开并再次工作。

有时这不起作用,所以我只是重新启动 VS 代码,然后 Intellisense 重新上线。

“如果您发现 IntelliSense 停止工作,则语言服务可能未运行。尝试重新启动 VS Code,这应该可以解决问题。” 来自https://code.visualstudio.com/docs/editor/intellisense并帮助了我

我遇到了同样的问题,但我用谷歌搜索了一下,找到了这个扩展名: Pylance ,它解决了这个问题。

只是一个警告——最初的问题是几年前提出的。 在那段时间发生了很大变化,包括移除旧的 MPLS 语言服务器、Pylance 发货(但 Jedi 是默认设置),然后从 2021 年中期开始,Pylance 成为默认设置。 如果您遇到问题,请在遵循给出的建议之前检查回复日期; 它可能已经过时了。 OP 的问题几乎可以肯定是 MPLS 的问题,而 MPLS 早已不复存在。 如果您在使用 Pylance 时遇到问题,请考虑在https://github.com/microsoft/pylance-release上提出问题。

对我来说,修复它的是重新安装默认的 Python 扩展并将设置中的 python 语言服务器设置为Default

脚步

  1. 同时按下CTRL/CMD + Shift + P打开命令 window 。 现在搜索install extensions
  2. Select Python并安装它(如果已经安装,请先卸载)。
  • Python 是 VSCode 中默认的 Python 扩展,它默认安装 Pylance。
  1. 再次打开命令 window 并这次搜索Settings Select Prefernces: Open settings (JSON)
  2. 在 python.languageServer 的 JSON 文件搜索( CTRL/CMD + F )中,并将值设置为Defaultpython.languageServer ,因为当前默认Pylance Pylance (我的设置为None 。)
  3. 保存文件后,会提示您是否要重新加载 vscode 以使更改生效,单击Yes

就是这样,智能感知现在应该可以使用 Pylance

我有一段时间有这个问题了。 我从堆栈中尝试了很多解决方案,但没有一个奏效。 卸载所有扩展对我来说很有效。

我的设置都井井有条,但仍然没有自动完成在线。 我禁用了 Kite 扩展和其他几个我并不真正需要的扩展,并且 IntelliSense 开始自动完成。 不是 100% 确定,但我认为这可能是我的“风筝”扩展设置造成的。

我已经尝试了其他人在此页面上列出的几乎所有内容,但没有一个对我有用。 我使用的是 Anaconda 的 Python 版本。

最后,我让 Python 智能感知开始在 VS Code 中工作的方式是:

  1. 打开终端(查看菜单 => 终端)
  2. 输入conda init powershell
  3. 重新启动 VS 代码

之后,Python 智能感知开始正常工作。

就我而言,我通过更改导入代码来修复 Intellisense。

越野车

import package.module 

工作方式

from package import module

问题

VSCode Pylance 遇到了pandas.read_csv()和公司( pandas.read_pickle() ,...)的问题。

解决方案

我的解决方案是对传入的数据调用pandas.DataFrame() 这似乎有助于 VSCode Pylance 这是我必须做的:

import pandas as pd

df = pd.read_pickle(
    "path_to_pickle_file.pkl"
)

# Needed to get Pylance Intellisense working
df = pd.DataFrame(df)

希望这对其他人有帮助。 我花了很长时间才弄清楚。

假设您使用Pylance作为您的语言服务器,那么对我Pylance (基于对话)是添加

"python.analysis.extraPaths": [
    "./src/lib"
],

(其中.src/lib/包含您的模块和__init__.py文件)到您的settings.json

注意:该设置称为python.analysis.extraPaths而不是python.autoComplete.extraPaths

我只是在扩展中禁用了 Pylance,建议立即再次起作用。

我也遇到了这个问题,真的很烦。 这是安装一些 npm 包时发生的 VS 代码的一个主要错误。 由于新包的模块加载失败,VS code IntelliSense 在您启动 VScode 片刻后崩溃并停止工作。

就我而言,它是通过使用 VScode 内部人员版本解决的: https ://code.visualstudio.com/insiders/

下载并安装 VScode 内部人员,安装您使用的所有扩展,然后检查问题是否已修复。

就我而言,vs 代码更新后,python 语言服务器出现问题。 每次下载语言服务器都卡住了。 请参阅此处输入链接描述我要做的是打开设置并输入“语言服务器”。 然后有一些选项,如 css、html 等(无论你安装了什么)

选择 Python 并搜索 lanuge 服务器。 另外如果提到默认是pylance,我不得不将它切换到Pylance并重新启动ide(更新窗口)

在这个动作之后,我的智能再次起作用了。

对我有用的是卸载 Python 扩展并重新启动 VS Code。 IntelliSense 栩栩如生! 这可能没有意义,因为我卸载了扩展程序。 欢迎您提出意见!

就我而言,有效的是自动安装pylance 的 vscode重新安装python 扩展

然后我只需点击键盘上的“ctrl + ,”即可将我带到输入的 vscode 设置: pylance

单击编辑 setting.json 并将“python.languageServer”更改为默认值

  },
"terminal.integrated.sendKeybindingsToShell": true,
"python.defaultInterpreterPath": "C:source\\env\\Scripts\\python.exe",
"python.disableInstallationCheck": true,
"terminal.integrated.defaultProfile.windows": "Command Prompt",
**"python.languageServer": "Default"**,
"python.analysis.completeFunctionParens": true,
"[jsonc]": {
    "editor.defaultFormatter": "esbenp.prettier-vscode"
},
"python.autoComplete.addBrackets": true,
"diffEditor.ignoreTrimWhitespace": false

我希望这对你也有用,否则你可以尝试重新安装 intellicode 和 python 扩展,然后重新启动你的 vscode。

希望这个对你有帮助 :)

就我而言,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"
  ]
}

重启语言服务器

go 到扩展 (Ctrl+Shift+X)。 您应该已经安装了以下扩展: 蟒蛇扩展

*:注意:其中一些可能需要重新启动,这样它就会显示在扩展的右侧。

如果安装了Pylance ,请确保在首选项中选择它,因为默认情况下它设置为Default

"python.languageServer": "Pylance"

在此处输入图像描述

一些稍微不同的东西对我有用。

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

瞧。 所有我想要的建议。

这对我有用:

就我而言,我正在使用 conda 虚拟环境。

我关闭了 vs 代码编辑器然后,导航到我的虚拟环境的根目录并从那里重新启动 vs code.

然后,在我的项目目录下的 .vscode 文件夹中,我打开设置文件并输入所需 python 安装的路径(在我的情况下,C:\User\user\miniconda\python.exe

我的Visual Studio代码的Intellisense无法正常工作。 每次我尝试将其与Ctrl + Shift ,它只会显示一条加载消息。 我正在使用Python(与Django一起使用),并已安装ms-python.python 我也有Djaneiro 它仍然无法正常工作。 在此处输入图片说明

这里似乎是什么问题?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM