jupyter notebook中文件“能点开”不等于“能正常运行”,关键取决于启动时的工作目录、内核匹配和文件路径是否正确:需cd到目标目录再启动,或用jupyter lab "path.ipynb"直接指定;上传是复制副本而非链接原文件;kernel不匹配会导致cell无法运行。

启动前必须 cd 到目标目录
如果 jupyter notebook 是在任意目录下启动的,它默认只显示当前目录及子目录下的文件。你把 analysis.ipynb 放在 D:\project\exp\,却在 C:\Users\Me 下执行命令,那它根本不会出现在左侧文件列表里。
- Windows:先
cd /d D:\project\exp(注意/d切盘符),再运行jupyter notebook - macOS/Linux:直接
cd /path/to/your/notebook,然后jupyter notebook - 错误现象:
No such file or directory或界面里压根找不到文件
用命令行直接指定文件路径启动
绕过浏览器界面导航,一步到位打开指定文件。这招适合快速查看、调试单个 notebook,尤其配合 --no-browser 用于远程服务器。
-
jupyter notebook path/to/file.ipynb—— 会自动启动服务并跳转到该文件 -
jupyter lab path/to/file.ipynb—— 同样生效,且优先推荐(jupyter lab已成事实标准) - 路径含空格或中文?用英文引号包裹:
jupyter lab "my project/data.ipynb" - 注意:该方式仍依赖当前 kernel 是否可用;若 notebook 记录了已删除的 kernel 名,会报错
Kernel not found
上传文件后实际是复制了一份
在 Jupyter Notebook Web 界面点 Upload,不是“链接”原文件,而是把文件内容 POST 到 Jupyter 服务的默认工作目录(通常是启动时的目录)。后续所有保存、运行都作用于这份副本。
- 副作用:原文件修改后,上传的副本不会同步更新
- Git 用户注意:上传操作可能污染工作区,导致误提交重复文件
- 替代方案:用
cd+ 启动,或右键文件 → “在终端中打开” → 执行jupyter lab
kernel 不匹配导致 cell 无法运行
一个 .ipynb 文件里存着 kernel 名(比如 "python3" 或 "myenv"),如果这个 kernel 没装或名字变了,即使文件能打开,运行 cell 也会卡住或报错 Kernel died 或 No module named 'xxx'。
- 检查当前可用 kernel:
jupyter kernelspec list - 给 notebook 换 kernel:打开文件后,顶部菜单 →
Kernel→Change kernel→ 选一个存在的 - 如果要用虚拟环境,先激活它,再执行:
python -m ipykernel install --name=myenv --display-name="My Env" - notebook 里 kernel 名存在
metadata.kernelspec.name字段,可手动编辑 JSON 修改(不推荐新手操作)











