主页概览
启动 Jupyter 后,浏览器打开 http://localhost:8888/tree,这就是 主页(Home)。
Jupyter Notebook 主页 — 文件浏览器视图
主页界面由以下几个部分组成:
- 顶部导航栏
- 包含 File、View、Settings、Help 四个菜单,以及 Jupyter Logo。
- Files 标签页
- 文件浏览器,显示工作目录下的文件和文件夹,可以上下导航。
- Running 标签页
- 显示当前正在运行的 Notebook 和 Terminal 会话,可以手动关闭释放资源。
- New 按钮
- 创建新的 Notebook 或文本文件,选择 Kernel 类型。
- Upload 按钮
- 将本地文件上传到当前目录。
Files 标签页详解
Files 标签页是一个文件浏览器,支持以下操作:
浏览目录
点击文件夹名称进入子目录;点击路径栏(如 / jupyter_demo /)中的上级目录可以返回。
进入 jupyter_demo 文件夹,看到 demo.ipynb 文件
文件操作
勾选文件旁边的复选框,顶部工具栏会出现操作按钮:
| 操作 | 方法 |
|---|---|
| 重命名 | 勾选文件 → 点击 Rename 按钮,或双击文件名 |
| 移动 | 勾选文件 → 点击 Move 按钮,输入目标路径 |
| 复制 | 勾选文件 → 点击 Copy 按钮 |
| 删除 | 勾选文件 → 点击垃圾桶图标(操作不可逆!) |
| 下载 | 勾选文件 → 点击 Download 按钮 |
创建新 Notebook
点击右上角 New 按钮,选择 Kernel:
- Python 3 (ipykernel) — 最常用,运行 Python 代码
- 如果安装了 R、Julia 等 Kernel,也会出现在列表中
TIP
Notebook 文件名默认为 "Untitled",创建后立即点击顶部标题栏的文件名进行重命名,养成好习惯。
上传文件
点击 Upload 按钮,选择本地文件(如 .csv、.xlsx、图片),上传到当前目录。
Running 标签页
切换到 Running 标签页,可以看到所有正在运行的 Kernel:
- 每个打开且有 Kernel 的 Notebook 都会在这里显示
- 点击 Shutdown 停止对应的 Kernel,释放内存
- 即使关闭了浏览器标签,Kernel 仍然运行,直到手动停止
WARNING
如果你同时开着很多 Notebook,内存可能会被大量占用。定期在 Running 页面关闭不再使用的 Kernel。
Notebook 文件状态标识
在文件列表中,Notebook 文件的图标颜色代表不同状态:
- 🟠 橙色图标 — Notebook 有关联的 Kernel 在运行
- ⚪ 灰色图标 — Notebook 未运行,Kernel 已停止
使用菜单栏
主页顶部菜单提供全局操作:
| 菜单 | 常用选项 |
|---|---|
| File | New Notebook、Open(打开文件)、Shut Down(关闭服务器) |
| View | 切换主题(浅色/深色) |
| Settings | Theme 设置、Language 选择 |
| Help | 键盘快捷键、关于 Jupyter |
JupyterLab 与 Jupyter Notebook 的区别
Jupyter 现在有两个主要版本的用户界面,了解区别有助于选择合适的工具:
| 对比项 | Jupyter Notebook(经典) | JupyterLab(新版) |
|---|---|---|
| 界面风格 | 简洁单文件视图 | 类 IDE 多面板布局 |
| 文件管理 | 基本文件浏览器 | 左侧边栏文件树 |
| 多文件同时编辑 | 不支持 | 支持(多标签 + 分屏) |
| 扩展系统 | 有限 | 丰富的插件生态 |
| 终端 | 单独窗口 | 内嵌终端面板 |
| 推荐场景 | 教学、简单演示 | 日常开发工作 |
# 启动 JupyterLab(推荐)
jupyter lab
# 启动经典 Notebook
jupyter notebook
工作目录的重要性
工作目录(Working Directory)
启动 Jupyter 时所在的目录即为工作目录。主页的 Files 面板只能浏览工作目录及其子目录,无法访问父目录(安全限制)。代码中用相对路径
./data.csv 访问工作目录下的文件。如何正确设置工作目录
在项目根目录启动 Jupyter:
cd /path/to/project && jupyter lab。避免在 Home 目录启动,否则所有文件都在同一层级,项目管理混乱。可在 ~/.jupyter/jupyter_lab_config.py 中设置默认工作目录。Notebook 的组织与命名规范
文件命名最佳实践
好的 Notebook 命名包含:日期前缀(YYYYMMDD)+ 简短描述,如
20260408_sales_analysis.ipynb。这样文件按时间自动排序,方便找回历史分析。避免用默认的 "Untitled.ipynb"——一个月后你不会记得里面是什么。重要的最终版本可以用 _v2、_final 后缀区分,但更好的方式是用 git 版本控制。推荐的项目目录结构
典型的数据分析项目结构:data/(原始数据,不提交到 git)、notebooks/(探索分析 Notebook,按日期命名)、src/(提取出来的可复用 Python 模块)、reports/(最终报告,nbconvert 输出的 HTML/PDF)、environment.yml 或 requirements.txt(环境依赖声明)。
如何避免 Notebook 变成"垃圾堆"
长期使用 Notebook 的常见问题:把所有实验都塞在一个 Notebook 中,变得臃肿难以阅读;保留了大量死代码(被注释掉的旧实验代码);单元格之间存在大量隐式依赖。解决方案:定期重构,把反复使用的代码提取到 .py 文件;每次重大分析新建一个 Notebook;提交前清除所有输出(nbstripout)并确保 Restart & Run All 无报错。
使用终端(Terminal)
在 JupyterLab 中,可以直接在界面内打开终端(File → New → Terminal),无需切换到系统终端:
# 在 Jupyter 内嵌终端中安装新包 $ pip install plotly # 查看当前工作目录 $ pwd # 解压数据文件 $ unzip data.zip -d data/
内嵌终端 vs 在 Notebook 中用 !命令
两者都可以执行 Shell 命令,但有区别:!pip install 在当前 cell 的子进程中执行,安装完后 Kernel 可以立即使用(推荐);内嵌终端适合需要交互式操作的命令(如 git commit 输入信息)、长时间运行的进程(不占用 Kernel)。安装包时优先用 !{sys.executable} -m pip install xxx 而非 !pip install xxx,确保安装到当前 Kernel 所在的 Python 环境。
# 在 Python 代码中检查当前工作目录
import os
print(os.getcwd()) # 输出当前工作目录
# 用相对路径加载数据(推荐)
import pandas as pd
df = pd.read_csv('data/train.csv') # 相对于工作目录
# 避免:绝对路径(换电脑就失效)
# df = pd.read_csv('/Users/alice/projects/ml/data/train.csv')
Kernel 的核心概念
Kernel 是什么
Kernel 是独立运行的计算引擎进程,负责执行 Notebook 中的代码。每个 Notebook 连接一个 Kernel;Kernel 保存所有变量和状态;关闭 Notebook 标签不会停止 Kernel(仍在后台运行)。
Kernel 管理最佳实践
长期运行或内存占用大的 Notebook,工作结束后应在 Running 标签页手动停止 Kernel。可以通过 Kernel → Restart and Clear Output 清除所有输出并重启,以干净状态重新运行 Notebook。
多 Kernel 支持
除 Python 外,Jupyter 还支持 R(IRkernel)、Julia(IJulia)、JavaScript(ijavascript)等 100+ 种 Kernel,安装对应的 Kernel 包即可在 New 菜单中选择使用。
JupyterLab 的高级文件管理功能
左侧边栏的五个面板
JupyterLab 左侧边栏包含:文件浏览器(文件夹图标)、运行的 Kernel/Terminal(正方形图标)、命令面板(放大镜图标,可搜索所有菜单命令)、单元格工具栏(属性面板,用于 Cell Tags 和元数据)、扩展管理器(拼图图标)。熟悉这五个面板可以大幅提升工作效率,避免频繁使用顶部菜单。
多面板分屏工作
JupyterLab 支持将多个文件并排显示:将 Notebook 标签拖拽到编辑区右侧即可创建分屏;典型用法:左侧数据 CSV 预览 + 右侧分析 Notebook;或左侧参考文档 + 右侧代码 Notebook。分屏状态下两个面板共享同一个 Kernel 会话,变量可以互通。
拖放文件操作
JupyterLab 的文件浏览器支持拖放:将文件从系统 Finder/资源管理器拖到浏览器的文件面板可以直接上传;将文件从文件面板拖到 Notebook 编辑区会自动生成对应的导入代码(CSV → pd.read_csv('xxx.csv'),图片 → 显示图片的代码)。这个功能在处理数据文件时极其方便。
主页常见误操作
- 删除 .ipynb 后无法撤销:Jupyter 主页的删除操作不会进入回收站,直接永久删除。重要 Notebook 务必定期备份,或使用 git 版本控制。
- Shutdown All Kernels 的副作用:点击 Kernel → Shut Down All Kernels 会停止所有 Notebook 的 Kernel,包括正在长时间运行的训练任务。多人共享 JupyterHub 时要特别注意。
- 工作目录外的文件无法访问:Jupyter 的安全限制使其只能访问启动目录及其子目录。如果数据文件在其他位置,启动 Jupyter 前需要先切换到包含所有资源的父目录。
本章小结
本章核心要点
- 主页导航:http://localhost:8888/tree(经典)或 /lab(JupyterLab);Files 标签浏览工作目录,Running 标签管理 Kernel,New 按钮创建 Notebook。
- 文件操作:勾选文件后工具栏出现操作按钮(重命名/移动/删除/下载);双击 .ipynb 文件打开 Notebook;Upload 按钮上传本地数据文件。
- Kernel 生命周期:关闭浏览器标签不停止 Kernel;需在 Running 标签手动 Shutdown;内存不足时检查是否有多余 Kernel 在运行。
- JupyterLab vs Notebook:JupyterLab 是现代版本,支持多标签、分屏、内嵌终端,推荐日常使用;经典 Notebook 界面更简洁,适合教学演示。
- 工作目录管理:在项目根目录启动 Jupyter;代码中用相对路径(./data.csv)而非绝对路径,保证代码在其他环境可复现。