VSCode不运行Python,仅调用本地解释器;配置失败主因是路径未对齐——需通过Python: Select Interpreter选择明确路径,确保状态栏、sys.executable、settings.json中python.defaultInterpreterPath三者一致,并在对应终端用python -m pip install装包。
VSCode 本身不运行 Python,它只调用你本地已安装的解释器;配置失败的绝大多数情况,是解释器路径没对齐——不是插件没装、不是版本太新,而是
命令在终端里指向一个地方,在 VSCode 里却指向另一个地方。
Python: Select Interpreter 选了但不生效?检查状态栏和
点开命令面板执行
后,右下角状态栏必须显示明确路径(如
),而不是模糊的 “Python 3.12” 或 “Conda (base)”。如果只显示版本号,说明 VSCode 没真正绑定到可执行文件。
新建
,写入
,运行它,输出路径必须和状态栏显示的一致
若不一致,说明你是在系统终端里装了包,但 VSCode 正在用另一个解释器——别靠
激活,那仅影响当前终端会话
macOS 用户特别注意:
是系统自带,无 pip、不可装包,VSCode 里选它必报
settings.json 中
必须用相对路径
仅靠 UI 点选解释器,只对当前工作区临时生效;关掉重开或换项目,又得重选。真正固化,得写进
。
路径必须相对于工作区根目录,例如
(Linux/macOS)或
(Windows)
不能用
、
或绝对路径(如
),否则换机器或共享项目时直接失效
如果项目用 conda,路径类似
,但要确认该环境已创建且未被
删除
launch.json 不配
字段,断点就不起作用
即使解释器选对了,VSCode 调试器默认仍可能绕过你的选择,直接调用系统
。结果就是:代码能跑,但断点灰掉、变量看不到、
有输出,
却像没启动。
Python 3.14.3
微软官方的 Python 扩展,是 VS Code 安装量最高的扩展(209M+)。集成 IntelliSense(通过 Pylance)、调试(通过 Python Debugger)、代码检查、格式化、重构和单元测试等功能。支持 Jupyter Notebook、虚拟环境管理和多 Python 版本切换。
下载
立即学习
“
Python免费学习笔记(深入)
”;
确保
的每个 configuration 里都有
,或干脆删掉该字段让 VSCode 自动继承当前解释器
别手动写死
——这会覆盖 UI 和 settings.json 的设置
调试前务必确认左下角状态栏解释器路径与
一致;不一致时,F5 启动的进程根本不是你认为的那个环境
pip install 装了包,但 import 还是报错?先查
很多人在系统终端里运行
,然后在 VSCode 里
报错。这不是包没装,是装到了别的 Python 环境里。
在 VSCode 内置终端(Ctrl+`)中执行
(macOS/Linux)或
(Windows),再执行
如果没找到,说明你之前是在另一个终端里装的——必须在 VSCode 当前解释器对应的终端里重装
统一用
,不用裸
,避免 pip 版本和解释器错配(尤其在多版本共存时)
最常被忽略的点:VSCode 的语言服务器、调试器、终端、linter、格式化工具,全部依赖同一个解释器路径;只要这个路径没对齐,后续所有功能都会“看似正常、实则错位”。
pythonsys.executablePython: Select Interpreter./venv/bin/pythoncheck.pyimport sys; print(sys.executable)source venv/bin/activate/usr/bin/python3ModuleNotFoundErrorpython.defaultInterpreterPath.vscode/settings.json"python.defaultInterpreterPath": "./venv/bin/python""python.defaultInterpreterPath": ".\venv\Scripts\python.exe"~/$HOME/Users/name/project/venv/bin/python"./miniconda3/envs/myproj/bin/python"conda env removepythonpythonprintdebugger.vscode/launch.json"python": "${command:python.interpreterPath}""python": "/usr/bin/python3"sys.executablepython -m pip listpip install requestsimport requestswhich pythonwhere pythonpython -m pip list | grep requestspython -m pip installpip install