python官方扩展是vs code python开发的必需基础,必须安装microsoft发布的纯“python”扩展,再手动执行python: select interpreter选择解释器,并在设置中将python.languageserver设为pylance,否则补全、调试等功能均无法生效。

Python 官方扩展是 VS Code 中 Python 开发的唯一可靠基础,不装它,后续所有补全、调试、类型检查都无从谈起。它不是“可选插件”,而是语言支持的必需层。
安装 Python 扩展的正确路径
直接在扩展市场搜 Python,但必须认准发布者是 Microsoft,名字是纯 “Python”(不是 “Python Extension Pack” 或 “Pylance” 单独安装)。后者是组合包或子组件,首装应以这个官方扩展为起点。
常见错误现象:Ctrl+Space 没补全、F5 调试报 “No debug adapter installed”、状态栏不显示 Python 版本——基本都是因为装了非官方扩展,或只装了 Pylance 却漏掉主扩展。
- 安装后务必重启窗口(
Cmd/Ctrl+Shift+P→ 输入Developer: Reload Window),不能只靠“启用” - 如果扩展面板里显示已安装但功能不生效,检查右下角状态栏是否出现灰色的
Python字样——没出现说明扩展未激活,不是网络问题就是版本冲突 - Windows 用户若用
winget install Python.Python.3.14安装解释器,VS Code 可能无法自动发现;此时需手动执行Python: Select Interpreter命令并浏览到C:\Users\XXX\AppData\Local\Programs\Python\Python314\python.exe
Python: Select Interpreter 必须手动触发
扩展装完 ≠ 环境就绪。VS Code 不会自动绑定你系统里唯一的 Python 解释器,尤其当你装了多个版本(比如 3.9、3.11、3.14)或混用 conda/venv 时,它大概率保持未选择状态。
操作路径:Ctrl+Shift+P(或 Cmd+Shift+P)→ 输入 Python: Select Interpreter → 从列表中选一个带明确路径的选项,例如:
Python 3.14.0 ('venv': venv)
Python 3.11.9 ('base': conda)
/usr/local/bin/python3.14
关键判断点:状态栏左下角出现带路径的 Python 版本,且没有红色感叹号图标。如果只显示 Select interpreter,说明这步没走完。
- 若列表为空,先确认 Python 是否真被加入
PATH(终端运行python --version能返回结果) - conda 环境需提前激活过一次(
conda activate myenv),否则 VS Code 可能扫描不到 - 虚拟环境目录名不能含空格或中文,否则解释器路径解析失败
Pylance 不是自动启用的,得手动设为语言服务器
Pylance 是 Python 扩展内置的语言服务器,提供类型提示、跳转定义、错误预检等核心能力。但它默认可能没启用,尤其在旧配置迁移或重装后。
验证方式:打开任意 .py 文件,把鼠标悬停在变量上——如果没出现类型信息(如 str、List[int]),大概率 Pylance 没生效。
- 进入设置(
Cmd+,或Ctrl+,),搜索python.languageServer - 将其值设为
Pylance(不是Microsoft或留空) - 改完不用重启,但建议关掉再开一个
.py文件观察效果 - 如果
Pylance报错 “Failed to start language server”,通常是 Python 解释器路径不对,回到上一步重新选
别跳过 Python: Configure Test Framework
写测试不是可选项,尤其当你用 pytest 或 unittest 时,VS Code 的测试视图(侧边栏 “测试” 图标)不会自动识别用例,除非你显式配置。
命令路径:Ctrl+Shift+P → 输入 Python: Configure Test Framework → 依次选框架、测试目录、文件模式(如 test_*.py)。
- 测试目录填相对路径即可(如
./tests),不要填绝对路径 - 若选了
pytest却提示 “pytest not found”,说明当前解释器里没装pytest,需在终端运行pip install pytest - 配置完刷新测试视图,看到绿色勾选图标和用例列表才算成功
Pylance 没设成语言服务器。这两步漏掉任何一环,整个 Python 支持就只是个空壳。Python免费学习笔记(深入):立即使用
在学习笔记中,你将探索 Python 的核心概念和高级技巧!











