VS Code 运行不了 Python 代码,90% 是因为解释器没选对;需通过“Python: Select Interpreter”手动指定准确路径(如 /usr/bin/python3 或 C:\...\python.exe),并确认右下角状态栏显示正确路径,否则运行和调试均会失败。

VSCode 运行不了 Python 代码,90% 是因为解释器没选对,而不是插件没装或路径没加进系统环境变量——它根本不用读你的 PYTHONPATH 或 shell 的 which python 结果。
Python: Select Interpreter 点了但没反应或列表为空
VSCode 不会自动扫描所有可能路径,尤其在以下情况容易漏掉解释器:
- conda 安装在非标准位置(如 Miniforge、
micromamba),或 Windows 上用的是conda.bat而不是可执行文件 - Python 是通过 Homebrew(macOS)或
apt(Linux)安装,路径不在默认搜索范围(例如/opt/homebrew/bin/python3) - 你创建了虚拟环境但没激活过,扩展无法发现
.venv/bin/python或.venv\Scripts\python.exe
实操建议:
- 先在终端运行
which python3(macOS/Linux)或where python(Windows),复制输出的完整路径 - 按
Ctrl+Shift+P→ 输入Python: Select Interpreter→ 选Enter interpreter path...→ 粘贴刚才复制的路径 - 如果用 conda,还需在
settings.json里加一行:"python.condaPath": "/path/to/conda"(Linux/macOS 填conda文件本身,Windows 填conda.bat) - 改完设置后必须执行
Developer: Reload Window,否则不生效
点了右上角绿色按钮却报 ModuleNotFoundError
这不是包没装,是你装到了另一个 Python 环境里。VSCode 的“运行”按钮只认你当前选中的解释器,和你在系统终端里执行 pip install 的环境无关。
立即学习“Python免费学习笔记(深入)”;
图片提示词生成器?不止如此。 马甲系统 —— 把脑海中的画面,翻译成AI能理解的专业表达。 用得越多,它越懂你:首次需要多问几句确认方向,用久了几乎一说就懂。 用得越多,它越快:缓存机制让后续对话越来越省。 RAG进化:成功案例持续入库,越跑越聪明。 输入「新手指南」查看完整功能介绍
实操建议:
- 确认底部状态栏显示的解释器路径(例如
./venv/bin/python),然后在 VSCode 集成终端(Ctrl+`)中执行:which python(macOS/Linux)或where python(Windows)——输出必须一致 - 再运行:
python -m pip list | grep requests(把requests换成你要查的包名),看是否在列表中 - 如果不在,就在该终端里重装:
python -m pip install requests(永远用python -m pip,别直接用pip) - 虚拟环境务必手动选中
.venv/bin/python,不能只选Python 3.x (venv)这类模糊条目——它可能指向全局 venv 模块而非你的项目目录
Ctrl+F5 能跑,F5 调试却断点不命中或 import 失败
F5 启动调试时,VSCode 默认生成的 launch.json 很可能没适配你的项目结构,尤其是涉及子模块导入或自定义 PYTHONPATH 时。
实操建议:
- 首次按 F5 时,选
Python File模板即可,但生成的.vscode/launch.json需要微调 - 如果项目结构是
src/main.py+src/utils.py,且main.py里写了from utils import helper,必须加:"env": {"PYTHONPATH": "${workspaceFolder}/src"} - 若用
python -m mypackage.cli方式启动,删掉"program"字段,加上:"module": "mypackage.cli" -
"console": "integratedTerminal"必须保留,否则输出看不到;"justMyCode": false在用 Poetry/Pipenv 时建议设为false,否则第三方库断点进不去
最常被忽略的一点:VSCode 的集成终端默认不继承你选的解释器环境,即使状态栏显示路径正确,新开终端也可能回到系统默认 shell。解决方法是,在设置里搜 python.terminal.executeInFileDir 关掉它,并确保 python.defaultInterpreterPath 是绝对路径——这样每次开终端,VSCode 才会尝试自动激活对应环境。

















