jupyter notebook在windows 10上稳定运行的关键是明确安装路径、python环境及配置生效方式:需用对应python.exe调用pip安装,配置文件须取消注释并正确转义路径,bat启动需ansi编码,端口冲突时指定新端口,启动时务必核对cmd输出的url和路径。

jupyter notebook 在 Windows 10 上装得快、跑得稳,关键不是“能不能装”,而是**装在哪、配在哪、启动时用哪个 Python 环境**。直接 pip 装完就 jupyter notebook 回车,大概率打开的是 C:UsersXXX 下一堆乱七八糟的文件,或者报错 No module named 'ipykernel',甚至浏览器打不开 localhost:8888。
怎么装才不报 No matching distribution found for ipykernel
这个错误基本等于 pip 没跟上 Python 版本节奏,尤其当你用的是非系统路径的 Python(比如自己解压的 portable Python 或旧版 Python)。
- 先确认你用的是哪个
python.exe:在 cmd 里运行where python,看输出路径 - 别只敲
pip install jupyter,要指定 pip 对应的 Python:比如输出是E:Python39python.exe,那就运行E:Python39python.exe -m pip install --upgrade pip,再运行E:Python39python.exe -m pip install jupyter - 如果用的是 Anaconda/Miniconda,优先用
conda install jupyter,它自动处理ipykernel依赖,比 pip 更稳
为什么改了 c.NotebookApp.notebook_dir 还不生效
配置文件生成后,必须删掉行首的 # 才生效,而且路径里的反斜杠 要么全换成正斜杠 /,要么用双反斜杠 —— 单个 在 Python 字符串里会被当转义符吃掉。
- 运行
jupyter notebook --generate-config,生成C:UsersXXX.jupyterjupyter_notebook_config.py - 用记事本或 Notepad++ 打开该文件,搜索
c.NotebookApp.notebook_dir - 把这行:
#c.NotebookApp.notebook_dir = ''改成:c.NotebookApp.notebook_dir = 'D:/my_jupyter'(推荐用正斜杠)或c.NotebookApp.notebook_dir = 'D:\my_jupyter' - 保存前确认编码是 UTF-8(Notepad++ 选“编码 → 转为 UTF-8 编码”),否则中文路径可能出问题
双击 bat 启动却闪退或中文乱码
bat 文件本身不认 Unicode,cmd 默认是 GBK 编码,但现代 Python 和配置文件多用 UTF-8,一碰中文就崩。
- bat 文件必须用 ANSI 编码保存(Notepad++ 选“编码 → 转为 ANSI 编码”),不是 UTF-8,也不是 UTF-8-BOM
- 内容只要两行就行:
@echo off和jupyter notebook,别加中文 echo,哪怕只是echo 启动中...都可能乱码导致卡住 - 更稳妥的做法:直接用快捷方式,目标填
cmd /k jupyter notebook,起始位置填你的工作目录路径(比如D:my_jupyter)
启动后浏览器打不开 localhost:8888
不是网络问题,八成是端口被占,或者 notebook 实际监听了别的地址。
- 启动时留意 cmd 输出里有没有
http://localhost:8888/这行 —— 如果显示的是http://127.0.0.1:8888/,就复制这个链接,别手输 localhost - 如果提示
Port 8888 is already in use,换端口启动:jupyter notebook --port=8889 - 如果看到
bind to *:8888或--ip=0.0.0.0,说明它在监听所有网卡,有安全风险;加--ip=localhost强制本地回环











