Jupyter 安装与使用指南:从环境配置到效率翻倍

前言

Jupyter Notebook / JupyterLab 是 Python 数据科学领域最流行的交互式开发工具,它把代码、文档、图表融为一体,非常适合探索性数据分析、机器学习实验和技术文档编写。

本文从零开始,覆盖 Conda 环境下的安装、内核配置、常用快捷键、魔法命令以及常见问题排查,适合初次接触 Jupyter 或想系统梳理用法的读者。


一、基础概念

在开始安装之前,先理清三个概念:

名称 是什么
Jupyter Notebook 经典 Web 界面,.ipynb 文件的默认编辑器
JupyterLab 新一代界面,支持多标签页、文件浏览器、终端、Markdown 预览等,功能更强
ipykernel 内核,负责执行你写的 Python 代码。每个 Conda 环境可以注册一个独立内核

一句话总结: JupyterLab 是升级版的 Notebook,ipykernel 是背后的执行引擎。本文后续均推荐使用 JupyterLab。


二、安装步骤

2.1 激活目标环境

bash 复制代码
conda activate ml

2.2 安装 Jupyter 核心组件

bash 复制代码
# 安装 Jupyter Notebook(经典版,包含 jupyter 命令)
pip install jupyter

# 安装 JupyterLab(推荐,功能更全)
pip install jupyterlab

如果只装 JupyterLab,也可以省略 jupyter 这个包------jupyter lab 命令由 jupyterlab 自带。

2.3 安装并注册内核

这是最关键的一步:把当前 Conda 环境注册为 Jupyter 的内核,这样在 Jupyter 里运行代码时,使用的就是当前环境的 Python 和已安装的包。

bash 复制代码
# 安装内核工具
pip install ipykernel

# 注册内核,"ml" 对应 Conda 环境名,"Python (ml)" 是界面上显示的名称
python -m ipykernel install --user --name=ml --display-name="Python (ml)"

验证内核是否注册成功:

bash 复制代码
jupyter kernelspec list

示例输出:

复制代码
Available kernels:
  python3        C:\...\jupyter\kernels\python3
  ml             C:\...\jupyter\kernels\ml

三、多内核管理与生产环境实践

当你有多个 Conda 环境需要接入 Jupyter 时,按上述方式为每个环境注册一个内核即可:

bash 复制代码
conda activate dl_env
pip install ipykernel
python -m ipykernel install --user --name=dl_env --display-name="Python (DL)"

conda activate web_env
pip install ipykernel
python -m ipykernel install --user --name=web_env --display-name="Python (Web)"

之后在 Jupyter 界面中即可自由切换不同环境,无需重启服务。

删除内核

bash 复制代码
# 列出所有内核,找到要删除的名称
jupyter kernelspec list

# 卸载指定内核
jupyter kernelspec uninstall ml

注意:卸载内核只是移除了"环境 → Jupyter"的映射关系,不会删除你的 Conda 环境本身。


四、启动与访问

命令 作用
jupyter notebook 启动经典 Notebook
jupyter lab 启动 JupyterLab(推荐)
jupyter lab --port 8888 指定端口启动
jupyter lab --no-browser 不自动打开浏览器(适合远程服务器)
jupyter lab --ip=0.0.0.0 允许外部访问(配合远程服务器使用)

远程服务器典型启动方式:

bash 复制代码
jupyter lab --no-browser --port=8888 --ip=0.0.0.0

然后在本地浏览器访问 http://<服务器IP>:8888,查看终端输出的 token 完成首次登录。


五、快捷键速查

掌握这些快捷键可以大幅减少鼠标操作,让你的 Jupyter 体验上天入地。

5.1 两种模式

模式 进入方式 特点
命令模式(蓝色边框) Esc 操作单元格整体:移动、删除、切换类型
编辑模式(绿色边框) Enter 在单元格内编写代码或 Markdown

5.2 命令模式快捷键(按 Esc 后生效)

快捷键 作用
A 在当前单元格上方插入新单元格
B 在当前单元格下方插入新单元格
DD(连按两次 D) 删除当前单元格
M 将单元格转为 Markdown 类型
Y 将单元格转为 代码 类型
Shift + ↑ / ↓ 多选单元格
Shift + M 合并选中的单元格
Z 撤销删除单元格
Ctrl + Shift + - 在光标处拆分单元格

5.3 编辑模式快捷键(按 Enter 后生效)

快捷键 作用
Shift + Enter 运行当前单元格,并跳转到下一格
Ctrl + Enter 运行当前单元格,光标留在原地(适合反复调试)
Alt + Enter 运行当前单元格,并在下方插入新格
Tab 代码补全 / 函数签名提示
Shift + Tab 展开当前函数的文档字符串(多按几次可展开更多)

六、魔法命令

魔法命令以 %%% 开头,是 Jupyter 的内置增强功能(来自 IPython)。

6.1 常用行魔法命令(%

python 复制代码
# 查看当前目录下所有变量及其类型
%whos

# 测量单行代码的执行时间
%timeit sum(range(1000000))

# 测量多行代码的执行时间
%%timeit 
result = 0
for i in range(1000000):
    result += i

# 让 matplotlib 图表直接嵌入 notebook
%matplotlib inline

# 一行代码启用调试器,异常时自动进入 pdb
%pdb

# 列出所有魔法命令
%lsmagic

6.2 在单元格中执行 Shell 命令

python 复制代码
# 执行任意 shell 命令
!pip list

# 将 shell 命令的输出赋值给 Python 变量
files = !ls
print(files)

6.3 其他实用操作

python 复制代码
# 将单元格内容写入文件
%%writefile hello.py
print("Hello, World!")

# 加载外部 Python 文件
%load hello.py

# 运行外部 Python 脚本
%run hello.py

七、常用扩展推荐

JupyterLab 支持丰富的扩展生态,以下为高频实用的几个:

bash 复制代码
pip install nbconvert nbformat ipywidgets jupyterlab-language-packs-zh-CN
扩展 作用
nbconvert 将 .ipynb 导出为 HTML / PDF / Markdown / Python 脚本
nbformat 程序化读写 .ipynb 文件(适合构建自动化管道)
ipywidgets 在 Notebook 中创建滑块、按钮、下拉菜单等交互控件
jupyterlab-language-packs-zh-CN JupyterLab 简体中文语言包

导出为 HTML 示例:

bash 复制代码
jupyter nbconvert --to html notebook.ipynb

八、常见问题

Q1: 终端提示找不到 jupyter 命令

通常是因为没有在当前环境中安装 Jupyter,或者安装后没有重新激活环境。

bash 复制代码
conda activate ml
pip install jupyter jupyterlab ipykernel

Q2: 在 Jupyter 里如何安装缺失的包?

直接在单元格中运行即可,包会安装到当前内核对应的环境中:

python 复制代码
!pip install package_name

Q3: 内核列表中看不到我注册的环境

重新执行注册命令,并检查是否有权限问题(--user 确保安装到用户目录):

bash 复制代码
python -m ipykernel install --user --name=ml --display-name="Python (ml)"
jupyter kernelspec list

Q4: 如何让 JupyterLab 显示中文界面?

安装中文语言包后,在 Settings → Language 中切换到中文:

bash 复制代码
pip install jupyterlab-language-packs-zh-CN

Q5: 远程连接时忘了 token 怎么办?

在服务器终端执行以下命令查看正在运行的 Jupyter 进程列表及 token:

bash 复制代码
jupyter server list

九、配置密码登录(远程服务器必备)

每次复制粘贴 token 很不方便,可以设置一个固定密码:

bash 复制代码
jupyter server password

按提示输入密码后,会在 ~/.jupyter/jupyter_server_config.json 生成密码哈希。之后访问 Jupyter 时直接输密码即可。


总结

Jupyter 的核心竞争力在于 "代码 + 文档 + 图表"三者合一 的交互式体验。本文从安装配置、内核管理、快捷键、魔法命令到远程部署,覆盖了 Jupyter 日常使用的完整链路。

几点建议:

  • 日常开发用 JupyterLab 替代经典 Notebook,功能强太多
  • 快捷键中 Shift + EnterA/BM/YDD 是"元技能",尽快练成肌肉记忆
  • 魔法命令 %timeit%pdb%matplotlib inline 是调试和性能分析的利器
  • 远程服务器上设置好 server password,省去每次找 token 的麻烦
相关推荐
呉師傅3 小时前
东芝e-STUDIO 3525ac提示黄色和品红色墨粉盒在耗尽前被更换。请重新插入之前的墨粉盒并用至耗尽如何操作
运维·windows·电脑
玖釉-3 小时前
二叉树展开为链表:从先序遍历到原地指针重排
c++·windows·算法·leetcode·链表
MinterFusion3 小时前
如何在Windows下查看某个文件的MD5和SHA256值(v0.1.0)
windows·md5·sha256·系统运维·明德融创
idolao5 小时前
Autodesk Alias AutoStudio 2025安装教程 Windows版:自定义路径指南
windows
霸道流氓气质6 小时前
Windows 图形界面配置 Ollama 镜像地址完整教程
windows·ollama
Cheng小攸7 小时前
2.隐藏账户
windows
摇滚侠7 小时前
IDEA 需要修改的配置 开发工具
java·ide·intellij-idea
吃胖点儿8 小时前
RAG系统优化完整路径:从30%到90%准确率的工程实践
服务器·数据库·windows
技术不好的崎鸣同学9 小时前
Windows 命令提示符(CMD)内容补缺&输入输出重定向及管道
运维·windows