跳转到主内容
websoft网络软件专家 - 深耕网络技术,打造实用软件!

VSCode里如何配置Python虚拟环境?【教程】

VSCode通过Python扩展识别虚拟环境,需手动指定解释器路径;自动扫描仅限项目根目录下的.venv、venv、env等标准命名目录,且要求结构完整;conda环境必须手动输入绝对路径;验证需运行sys.executable和pip测试。 VSCode 本身不管理 Python 虚拟环境 ,它只负责识别和使用你已创建好的环境。关键不是“配置”,而是让 VSCode 正确找到
python
可执行文件的路径。 如何让 VSCode 找到你的虚拟环境? VSCode 通过 Python 扩展读取工作区或用户级设置中的
python.defaultInterpreterPath
,或者自动扫描常见目录(如
.venv
、
venv
、
env
)。但自动发现经常失败,尤其在多项目混用或自定义路径时。 推荐做法:打开项目根目录后,按
Ctrl+Shift+P
(Windows/Linux)或
Cmd+Shift+P
( mac OS),输入并选择
Python: Select Interpreter
如果列表里没出现你的环境,点击
Enter interpreter path...
,然后手动定位到虚拟环境里的
python
(Windows 是
venvScriptspython.exe
,macOS/Linux 是
venv/bin/python
) 选中后,VSCode 会在当前工作区生成
.vscode/settings.json
,写入类似:
{ "python.defaultInterpreterPath": "./venv/bin/python" }
为什么
python -m venv venv
创建的环境有时不被识别? VSCode 的 Python 扩展默认只扫描项目根目录下的特定名称子目录(
.venv
、
venv
、
env
),且要求该目录下存在
pyvenv.cfg
和有效的
bin/
或
Scripts/
子目录。常见失效原因: 你在项目外运行了
python -m venv venv
,导致
venv
目录不在当前 VSCode 工作区根目录下 你用了非标准路径,比如
python -m venv ../myenv
,VSCode 不会跨目录查找 你在 WSL 中创建了环境,但 VSCode 运行在 Windows 端,无法直接访问 WSL 路径(需用
\wsl$
前缀或在 WSL 中启动 VSCode) 使用
conda
环境时要注意什么? Conda 环境路径不遵循 venv 结构,VSCode 无法自动发现,必须手动指定解释器路径。 Trae win Trae Windows 官方版本现已全面支持 Win10 和 Win11 系统(64位)。国内开发者可直接访问 Trae 中文官网(trae.cn 或 trae.com.cn),一键下载官方正版 .exe 安装包,享受国内直连的高速稳定体验。安装过程极其简便,双击即可运行,并支持一键无缝导入 VS Code 或 Cursor 的原有主题、快捷键及插件配置。登录支持手机号、微信或稀土掘金账号。内置免费的豆包与 DeepSeek 等顶级大模型,让你开箱即用,轻松开启高效的 AI 智能编程之旅。 下载 立即学习 “ Python免费学习笔记(深入) ”; 先在终端激活 conda 环境:
conda activate myenv
再运行
which python
(macOS/Linux)或
where python
(Windows)获取绝对路径 在 VSCode 中通过
Python: Select Interpreter
→
Enter interpreter path...
粘贴该路径 注意:不要选 conda 自带的 base 环境的
python
,除非你明确想用它;conda 环境路径通常形如
~/miniconda3/envs/myenv/bin/python
或
C:UsersXXXMiniconda3envsmyenvpython.exe
检查是否真的生效了? 光看右下角状态栏显示的 Python 版本还不够。真正验证方式是: 新建一个
.py
文件,输入
import sys print(sys.executable) print(sys.path)
,运行它 —— 输出的
sys.executable
必须和你在
Python: Select Interpreter
中选的一致 安装包后(如
pip install requests
),确保在 VSCode 的集成终端中运行
python -c "import requests"
不报错;如果报
ModuleNotFoundError
,说明终端没继承当前解释器环境(可能终端未重启,或 VSCode 启动时没加载 shell 配置) 调试时断点不触发、
launch.json
报
Cannot find module
,大概率是
python
路径没对齐 最常被忽略的是:VSCode 集成终端默认不会自动激活你选中的解释器对应的环境,它只是复用系统 shell。你需要手动在终端里运行
source venv/bin/activate
(或对应平台的激活命令),或者在
.vscode/settings.json
中配置
terminal.integrated.env.*
来预设 环境变量 ——但这属于进阶控制,多数人只需记住「选解释器 ≠ 终端自动激活」。

相关文章