彻底卸载Jupyter Notebook需分三步:先按安装来源(conda或pip)执行对应卸载命令清除所有核心包,再手动删除.jupyter和AppData\Roaming\jupyter配置目录,最后验证命令、路径及内核无残留,尤其注意清理幽灵内核。

卸载不等于删掉 jupyter 这一个包 —— 直接 pip uninstall jupyter 会漏掉至少 7 个核心依赖,命令行仍能运行 jupyter notebook,配置和内核也全在。
先判断安装来源:pip、conda 还是 Anaconda 自带?
混用安装方式是卸载失败的主因。执行以下命令快速定位:
-
conda list jupyter—— 若有输出,说明是 conda 安装(哪怕只装过一次) -
pip show jupyter notebook jupyter-core—— 查看每个包的Location,路径含anaconda3或miniconda就属于 conda 环境;含site-packages但路径是用户目录(如C:\Users\XXX\AppData\Roaming\Python\...),大概率是 pip 安装 -
where jupyter(Windows)或which jupyter(macOS/Linux)—— 看可执行文件在哪,anaconda3\Scripts\jupyter.exe是 conda;%LOCALAPPDATA%\Programs\Python\...\Scripts\jupyter.exe是 pip
按来源分别卸载:别让 pip 和 conda 互相“看不见”
conda 安装的必须用 conda 卸,pip 安装的必须用 pip 卸,否则残留必然发生:
- conda 用户:
conda remove notebook jupyter jupyter-client jupyter-core nbconvert nbformat;如果不确定环境,先conda env list,再conda activate base(或对应环境名)后执行 - pip 用户:
pip uninstall -y jupyter notebook jupyter-core jupyter-client jupyter-console qtconsole nbconvert nbformat——-y避免交互确认,一次性清掉全部子包 - 若两者共存(常见于曾用 conda 装过又用 pip 升级),两个命令都得跑一遍;顺序无所谓,但
pip show每次执行后要再查一遍,直到无输出为止
删配置目录:.jupyter 和 AppData\Roaming\jupyter 必须手动删
卸包不删配置,重装后所有旧内核、密码、自定义 CSS 全回来,等于没卸:
- Windows 下这两个路径必须进资源管理器手动删除:
C:\Users\{用户名}\.jupyter和C:\Users\{用户名}\AppData\Roaming\jupyter - 不要只删
.jupyter——AppData\Roaming\jupyter存的是内核注册信息和日志,jupyter kernelspec list还能列出旧内核就说明这里没清干净 - 删之前可先运行
python -c "from jupyter_core.paths import jupyter_config_dir; print(jupyter_config_dir())"确认当前配置根路径,避免删错位置
验证是否真卸干净:命令、路径、内核三处都不能有残留
别信“卸载完成”的提示,直接验证:
- 打开新终端,执行
jupyter notebook—— 应报错'jupyter' 不是内部或外部命令(Windows)或command not found(macOS/Linux) - 执行
where jupyter(Windows)或which jupyter(其他系统)—— 应无任何输出 - 检查
jupyter kernelspec list—— 若还能列出 kernel,说明AppData\Roaming\jupyter\kernels没删完,或某个 Python 环境里还装着ipykernel
最易忽略的是:即使所有包都卸了,只要某个 Python 环境里还留着 ipykernel 并执行过 python -m ipykernel install,它就会把 kernel 写进全局目录,导致 jupyter notebook 仍能启动——这种“幽灵内核”得进对应环境再 pip uninstall ipykernel 才算真正收尾。


















