当前位置: 首页 > news >正文

vscode@python语言插件组合@语言服务器插件功能异常排查

文章目录

    • abstract
      • astral系列产品
      • python插件功能配置和异常排查
        • pylance
        • ty

abstract

vscode中python基础插件和增强插件:

  • Python - Visual Studio Marketplace

    • 支持 Python 语言,并提供 IntelliSense (Pylance)、调试 (Python Debugger)、代码检查、格式化、重构、单元测试等扩展访问点。
    • 本插件是许多其他python插件的基础(依赖项)
  • Pylance - Visual Studio Marketplace

    • VS Code 中高性能、功能丰富的 Python 语言服务器;安装时可能不依赖于上述的基础python插件,可以独立安装;
  • ty - Visual Studio Marketplace

    • 除了pylance,较新的ty是一个用 Rust 编写的、速度极快的 Python 类型检查器和语言服务器。

其他

Python 扩展提供可插拔的访问点,用于扩展各种功能领域,从而进一步提升您的 Python 开发体验。这些扩展都是可选的,具体取决于您的项目配置和偏好。

下面这些插件依赖于python基础插件:

  • Python formatters Python 格式化程序
  • Python linters Python 代码检查器

社区提供的ruff方案兼顾python程序的格式化和代码检查,且性能好,是一个不错的选择;

  • Ruff - Visual Studio Marketplace

    此插件需要ruff程序提供支持.(powered byastral)

astral系列产品

Astral致力于为 Python 生态系统构建高性能开发者工具。

  • Astral Docs

最著名的作品包括 Python 包管理器 uv,以及代码检查和格式化工具 Ruff。

  • Ruff

python插件功能配置和异常排查

不恰当的项目目录(工作区)配置会导致python插件提供的部分甚至主要功能失效;

除了系统级和用户级配置,在vscode在工作区(项目根目录)中针对python的配置.vscode/settings.json文件中通常有3个配置项:

pylance

这些配置项在vscode的设置中都可以找到(python插件+pylance插件)

{"python.languageServer":"Default","python.analysis.diagnosticsSource":"Pylance","python.analysis.languageServerMode":"default"}

其中最为重要的是python language server;

如果语言服务器运行异常,那么许多基础功能,例如符号分析和跳转都无法工作;

可以通过vscode的OUTPUT选项卡中的python相关的下拉选项中查看插件的日志输出;

Output: Focus on Output View

日志输出示例:

2026-04-23 11:50:39.231 [info] Client: Pylance client (2026.2.1) started with python extension (2026.4.0) 2026-04-23 11:50:39.957 [info] (6952): Server root directory: file:///c%3A/Users/Administrator/.vscode/extensions/ms-python.vscode-pylance-2026.2.1/dist 2026-04-23 11:50:40.047 [info] (6952): Pylance language server 2026.2.1 (pyright version 1.1.408, commit 138238b4) starting 2026-04-23 11:50:40.055 [info] (6952): Starting service instance "woo_df" for workspace "c:\Users\Administrator\Desktop\woo_df" 2026-04-23 11:50:40.937 [info] (6952): Loading background bundle file:///c%3A/Users/Administrator/.vscode/extensions/ms-python.vscode-pylance-2026.2.1/dist/copilot-background.bundle.js into file:///c%3A/Users/Administrator/Desktop/woo_df... 2026-04-23 11:50:41.023 [info] (6952): Starting Mcp server id:52946 ... 2026-04-23 11:50:41.048 [info] (6952): FG(woo_df): Loading configuration file at c:\Users\Administrator\Desktop\woo_df\pyrightconfig.json 2026-04-23 11:50:41.049 [error] (6952): FG(woo_df): Config file "c:\Users\Administrator\Desktop\woo_df\pyrightconfig.json" could not be parsed. Verify that format is correct. 2026-04-23 11:50:41.061 [info] (6952): FG(woo_df): Setting environmentName for service "woo_df": "3.12.12 (base conda)" 2026-04-23 11:50:41.061 [info] (6952): FG(woo_df): Setting pythonPath for service "woo_df": "C:\scoop\apps\miniforge\25.11.0-1\python.exe" 2026-04-23 11:50:41.062 [info] (6952): FG(woo_df): No include entries specified; assuming c:\Users\Administrator\Desktop\woo_df 2026-04-23 11:50:41.062 [info] (6952): FG(woo_df): Auto-excluding **/node_modules 2026-04-23 11:50:41.063 [info] (6952): FG(woo_df): Auto-excluding **/__pycache__ 2026-04-23 11:50:41.063 [info] (6952): FG(woo_df): Auto-excluding **/.* 2026-04-23 11:50:41.125 [info] (6952): FG(woo_df): Assuming Python version 3.12.12.final.0 2026-04-23 11:50:41.248 [info] (6952): [Editable Installs] Starting dynamic pth file resolution for Python: C:\scoop\apps\miniforge\25.11.0-1\python.exe 2026-04-23 11:50:41.257 [info] (6952): [Editable Installs] No sandbox available for Python C:\scoop\apps\miniforge\25.11.0-1\python.exe. Dynamic pth file resolution requires Python 3.13 or later. 2026-04-23 11:50:41.338 [info] (6952): FG(woo_df): Found 74 source files 2026-04-23 11:50:41.353 [info] (6952): Settings have not changed. Skipping update. 2026-04-23 11:50:41.696 [info] (6952): PQ(woo_df): Priority queue background worker(2) root directory: file:///c%3A/Users/Administrator/.vscode/extensions/ms-python.vscode-pylance-2026.2.1/dist 2026-04-23 11:50:41.696 [info] (6952): PQ(woo_df): Priority queue background worker(2) started 2026-04-23 11:50:41.833 [info] (6952): FG(woo_df): IDX(woo_df): Indexer background runner(3) root directory: file:///c%3A/Users/Administrator/.vscode/extensions/ms-python.vscode-pylance-2026.2.1/dist (index) 2026-04-23 11:50:41.834 [info] (6952): FG(woo_df): IDX(woo_df): Indexing(3) started 2026-04-23 11:50:43.271 [info] (6952): FG(woo_df): IDX(woo_df): scanned(3) 635 files over 1 exec env 2026-04-23 11:50:43.607 [info] (6952): FG(woo_df): IDX(woo_df): indexed(3) 635 files over 1 exec env 2026-04-23 11:50:43.710 [info] (6952): FG(woo_df): IDX(woo_df): Indexing finished(3).

语言服务器插件会跳过一些通常不适合检索的目录,例如node_modules,__pycache__以及.开头的(通常被视为隐藏文件)

下面是一些语言服务器插件输出的日志示例

ty

高性能的python语言服务器插件

如果使用这个方案代替pylance,它是自动配置的,如果行为不符合预期,可以尝试在vscode设置中进一步配置;

启动日志示例

2026-04-23 17:05:19.384 [info] Name: ty 2026-04-23 17:05:19.384 [info] Module: ty 2026-04-23 17:05:19.384 [info] Python extension loading 2026-04-23 17:05:19.384 [info] Waiting for interpreter from python extension. 2026-04-23 17:05:22.216 [info] Python extension loaded 2026-04-23 17:05:22.268 [info] Using interpreter: c:\scoop\apps\miniforge\25.11.0-1\python.exe 2026-04-23 17:05:22.316 [info] Initialization options: {} 2026-04-23 17:05:22.379 [info] Using the ty binary: c:\scoop\apps\miniforge\25.11.0-1\Scripts\ty.exe 2026-04-23 17:05:22.382 [info] Found executable at c:\scoop\apps\miniforge\25.11.0-1\Scripts\ty.exe 2026-04-23 17:05:22.382 [info] Server run command: c:\scoop\apps\miniforge\25.11.0-1\Scripts\ty.exe server 2026-04-23 17:05:22.383 [info] Server: Start requested. 2026-04-23 17:05:22.407 [info] ty server version: 0.0.32 (4d1e1fc57 2026-04-20)
2026-04-23 16:59:06.723737600 INFO Version: 0.0.32 (4d1e1fc57 2026-04-20) 2026-04-23 16:59:06.764138700 INFO Defaulting to python-platform `win32` 2026-04-23 16:59:06.765158200 INFO Python version: Python 3.12, platform: win32 2026-04-23 16:59:13.035895900 INFO Indexed 100 file(s) in 0.016s 2026-04-23 16:59:15.425918000 INFO Checking file `c:\Users\Administrator\Desktop\woo_df\woosqlitedb.py` took more than 100ms (457.1503ms)
http://www.jsqmd.com/news/696075/

相关文章:

  • 2026年化工原料采购指南:EDTA 四钠二钠、钼酸钠、钨酸钠靠谱生产厂家采购要点 - 栗子测评
  • MCP网关时延毛刺突增47ms?揭秘C++线程亲和性错配、NUMA内存跨节点访问与TLB抖动真相
  • AI面试准备工具:数据科学求职实战指南
  • 2026白酒贴牌技术全解析:从资质到交付的权威筛选指南 - 优质品牌商家
  • Raspberry Pi Pico高级套件:模块化嵌入式开发实战指南
  • 避开ORAN部署大坑:从O-RU延迟报告精度(200ns)看时间窗对齐的隐藏风险
  • 别急着扔!联想Thinklife ST600 120G固态硬盘变砖(satafirms11)自救全记录,附PS3111主控通用修复包
  • 大语言模型量化技术:原理、实现与优化
  • 2026年可调光衰减器品牌排行:光回波损耗测试仪、光损耗测试仪、光衰减仪、可调光衰减器、可调谐激光光源、声光调制器选择指南 - 优质品牌商家
  • Go语言的sync.Cond条件
  • Fine-Tuning vs RLHF vs DPO:大模型对齐技术深度选型指南
  • Confucius框架:大语言模型工具学习的课程学习与迭代优化实践
  • HTML5动漫主题网站——天空之城 10页 html+css+设计报告成品项目模版
  • 问山海——桃花渊副本:基于Python的BOSS刷新时间与击杀路径优化策略
  • BigCodeBench:超越HumanEval,评估大模型真实编程能力的实战基准
  • 2026 转行必看:运维转网安从 0 到 1 系统规划,稳扎稳打
  • 别再手动转换了!写个C语言小程序,一键生成财务报销单的大写金额
  • 别再死记命令了!用一张拓扑图彻底搞懂华为VRRP和MSTP是怎么协同工作的
  • Keras模型转Web应用:TensorFlow.js实战指南
  • 终极优化神器:Optimization.jl 完整指南 - 高性能科学计算解决方案
  • Kinect系列2:(Windows实战指南)Python3+Pykinect2+KinectV2实现彩色与深度图实时对齐与可视化
  • AcWing 1874题保姆级解析:用C++枚举+哈希表,搞定奶牛拼图里的‘MOO’最大数量
  • 用Python和ABC记谱法,5分钟把一段文本变成《致爱丽丝》
  • 3步打造影院级观影体验:MPV播放器完整配置指南 [特殊字符]
  • FPGA断电程序就丢?手把手教你用Vivado把程序‘焊死’进Flash(以S25FL128为例)
  • 超上下文技术:突破LLM长文本处理瓶颈,构建下一代AI交互范式
  • PowerDMIS:手动特征(CAD辅助测量)
  • 对话式AI输出机制:结构化输出与函数调用对比
  • 终极NHS UK Frontend教程:3步构建专业医疗网站界面
  • RAG幻觉检测技术:原理、实现与优化策略