vs code python开发必须启用pylance语言服务器,禁用jedi;jupyter插件仅对.ipynb和含# %%的.py文件生效;black格式化应手动触发而非保存时自动执行;调试参数优先使用命令面板动态输入;所有插件启用范围须设为工作区级别。

VSCode本身不是Python IDE,靠插件堆出生产力——但装错、装多、配置漏,反而拖慢开发节奏。核心就一条:只留真正干活的,每个多余插件都在吃内存、抢快捷键、干扰调试。
Python插件必须开Pylance,别用Jedi
Pylance是微软官方语言服务器,补全快、类型推断准、跳转稳;Jedi虽开源但对type hint、泛型、dataclass支持弱,尤其在大型AI项目里常卡住或报错undefined variable。VSCode默认启用Pylance,但如果你手动关过或用旧配置,检查设置里"python.languageServer"是否为"Pylance"。别信“Jedi更轻量”的老说法——2026年Pylance已优化到内存占用比Jedi还低。
Jupyter插件只在.ipynb文件里生效,.py里没用
很多人装了Jupyter插件就想在普通.py文件里按Shift+Enter运行代码块,结果报错No kernel found。这是正常现象:Jupyter插件只接管.ipynb和带# %%分隔符的.py文件。想在纯脚本里交互运行,用Python插件自带的Python: Run Selection in Terminal(默认快捷键Ctrl+Shift+P → 输入该命令),它不依赖kernel,直接调用当前解释器执行选中段落。
Black格式化要关掉auto-save触发,改用手动快捷键
很多教程教你在设置里开"editor.formatOnSave": true配"python.formatting.provider": "black",结果保存时整个文件重排,git diff全是格式变动,协作时被同事骂。真实做法是:Ctrl+Shift+I手动格式化当前文件(或选中区域),再配合"editor.formatOnType": false和"editor.formatOnPaste": false。这样既保格式统一,又不污染提交历史。
调试传参别硬写launch.json,用命令面板更灵活
在.vscode/launch.json里写死"args": ["--lr", "1e-4"]看着方便,但换参数就得改配置、重启调试器。实际开发中更常用的是:Ctrl+Shift+P → Python: Debug Current File with Arguments,弹出输入框直接输--batch-size 32 --device cuda。VSCode会临时生成一次性的调试配置,不污染项目,也不用记JSON语法。注意:这个命令只在Python插件v2026.4+版本支持,旧版请先升级。
最易被忽略的一点:所有插件的“启用范围”要设成“工作区级别”,而不是全局。比如你在YOLO项目里开了TensorBoard支持,在Django项目里它照样加载——不仅慢,还可能冲突。右键插件名 → “Extension Settings” → 切换到“Workspace”标签页,勾选“Enable in this workspace”。每个项目干净起步,才是长期不翻车的关键。
Python免费学习笔记(深入):立即使用
在学习笔记中,你将探索 Python 的核心概念和高级技巧!











