You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

VSCode与Jupyter Notebook:实现选中Kernel自动激活虚拟环境

在VSCode的Jupyter Notebook里自动激活对应虚拟环境的方案

目前VSCode确实没有像jupyter.terminal.activateEnvironment这种现成配置直接实现这个需求,但有两种可行的办法:

方法一:给终端配置加自动激活逻辑

  • 按Ctrl+,打开设置,搜索terminal.integrated.profiles,找到你常用的终端(比如Windows的PowerShell、Linux/macOS的bash)
  • 编辑终端的启动参数,加入自动激活虚拟环境的命令。如果是固定路径的虚拟环境(比如项目根目录下的.venv),PowerShell可以这么写:
    -NoExit -Command "if (Test-Path '${workspaceFolder}/.venv/Scripts/Activate.ps1') { & '${workspaceFolder}/.venv/Scripts/Activate.ps1' }"
    
    要是想动态对应当前Notebook的kernel,得先通过Jupyter命令获取kernel的环境路径再激活。比如bash里可以写:
    bash -c "source \$(jupyter kernelspec list --json | jq -r '.kernelspecs | .\"你的kernel名称\" | .spec.argv[0] | dirname')/../bin/activate; exec bash"
    
    不过这个得提前知道kernel的名字,或者写个小脚本自动识别当前Notebook用的kernel。

方法二:先激活环境再注册kernel(新手推荐)

这个方法更直观,不容易出问题:

  • 先开个终端,手动激活你想用的虚拟环境:Windows用.venv\Scripts\activate,Linux/macOS用source .venv/bin/activate
  • 在激活的环境里安装ipykernel并注册kernel:pip install ipykernel && python -m ipykernel install --user --name=自定义kernel名
  • 之后在VSCode里选这个注册好的kernel,从这个Notebook窗口打开新终端时,就会自动处于该虚拟环境里了——因为Notebook的父进程是激活环境后的shell,终端会继承环境变量。

内容的提问来源于stack exchange,提问作者BB3C

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.24 16:24:20