用 .bat 一键启动 Jupyter:多环境切换

在 Windows 下,如果直接点 Jupyter 图标再切换 kernel,常会遇到环境不稳定、依赖冲突甚至内核崩溃。更稳妥的做法是:先用 .bat 激活指定 conda 环境,再启动 Jupyter。这样环境变量、依赖路径和 Python 解释器是一致的。

一、JupyterLab 启动脚本

文件名:start_jupyterlab.bat

vbnet 复制代码
@echo off
chcp 65001 >nul
title JupyterLab Launcher

call C:\path\to\anaconda3\Scripts\activate.bat

:menu
cls
echo =========================
echo JupyterLab Menu
echo =========================
echo.
echo 1. base
echo 2. env_a
echo 3. env_b
echo.
echo 0. Exit
echo.
set /p choice=Choose environment:

if "%choice%"=="1" set ENV_NAME=base& goto launch
if "%choice%"=="2" set ENV_NAME=env_a& goto launch
if "%choice%"=="3" set ENV_NAME=env_b& goto launch
if "%choice%"=="0" goto end

pause
goto menu

:launch
cd /d G:\
call conda activate %ENV_NAME%
jupyter lab
pause
goto end

:end
exit

二、Jupyter Notebook 启动脚本

把这里:

css 复制代码
call conda activate %ENV_NAME%
jupyter lab
pause

改为:

css 复制代码
call conda activate %ENV_NAME%
jupyter notebook
pause

其余逻辑完全相同。

三、完整使用流程

  1. 安装 Anaconda 或 Miniconda。
  2. 确认 activate.bat 路径(conda的安装路径里)。
  3. 把常用环境名写进菜单。
  4. cd /d 路径 指定启动根目录。
  5. 双击 .bat,输入编号,自动激活环境并启动。

四、首次启动时的根目录

Jupyter 不是系统资源管理器,它只能看到启动根目录及其子目录

例如:

*cd /d G:*

表示首次进入后,文件树根目录就是 G:

如果写成某个项目目录,就只能看到该项目及其下级文件夹,不能再往上退。

五、再次启动是否会回到历史文件

  • 目录层面:仍以脚本里写的根目录为准。

  • 文件层面

    • JupyterLab 会更倾向恢复上一次的工作区、标签页和布局。
    • Jupyter Notebook 更偏向单文件使用,历史恢复能力弱一些。

所以,Lab 更像"继续上次工作现场",Notebook 更像"重新打开一个笔记本"。

六、Notebook 和 Lab 怎么选

Jupyter Notebook

优点:轻量、简单、上手快、干扰少。

缺点:多文件管理弱,项目化体验一般。

适合:Python 初学者、单个实验、小型练习、课堂学习。

JupyterLab

优点:可同时管理 notebook、脚本、终端、文件夹,适合项目开发。

缺点:界面更复杂,资源占用略高。

适合:科研计算、图像处理、多脚本项目、长期开发用户。

七、结论

如果你经常切 conda 环境,不要依赖图标启动后再切 kernel

更推荐:.bat 先激活目标环境,再启动 Jupyter

入门、轻量任务用 Notebook;项目开发、多文件协同用 Lab。

核心原则只有一句:启动方式决定稳定性,根目录决定你能看到哪里。

相关推荐
何陋轩3 小时前
Netty高性能网络编程深度解析:把网络框架核心讲透,让面试官刮目相看
后端·面试
落木萧萧8253 小时前
为什么我又写了一个 ORM 框架(MyBatisGX)
后端·架构
昵称为空C3 小时前
在复杂SpringBoot项目中基于hutool实现临时添加多数据源案例
spring boot·后端
金融数据出海4 小时前
韩国股票 API 对接指南 Seoul&KOSDAQ
后端
geovindu4 小时前
go: Simple Factory Pattern
开发语言·后端·设计模式·golang·简单工厂模式
咕白m6254 小时前
Python 高效添加与管理 Excel 工作表
后端·python
计算机学姐4 小时前
基于SpringBoot的房屋交易系统
java·vue.js·spring boot·后端·spring·intellij-idea·mybatis
java1234_小锋4 小时前
SpringBoot 4 + Spring Security 7 + Vue3 前后端分离项目设计最佳实践
spring boot·后端·spring
今夕资源网4 小时前
indextts API 阅读 API 重磅升级!低延迟 + 音色管理 + 缓存全拉满 支持开源阅读小说软件,其他软件应该也通用
java·后端·spring