交互编程工具之——Jupyter

Jupyter 是什么?

Jupyter 是一个开源的交互式编程和数据分析工具,广泛应用于数据科学、机器学习、教育和研究领域。其核心是 Jupyter Notebook (现升级为 JupyterLab),允许用户在一个基于浏览器的界面中编写代码、运行代码、可视化结果,并添加富文本(如 Markdown)进行说明,形成可重复、可分享的文档。


Jupyter核心特点

  1. 交互式编程
    • 支持逐行或分块执行代码,实时查看结果(如图表、表格、文本等)。
    • 特别适合探索性数据分析(EDA)和快速原型开发。
  2. 多语言支持
    • 原生支持 Python (最常用),通过安装内核(kernel)可扩展至 R、Julia、Scala、JavaScript 等 40+ 种语言。
  3. 富文本与可视化
    • 支持 Markdown、LaTeX、HTML 编写文档,结合代码和说明(如数学公式、图片)。
    • 集成 Matplotlib、Plotly、Bokeh 等可视化库,直接显示图表。
  4. 跨平台与云端集成
    • 可在本地或远程服务器运行,支持 Docker 部署。
    • 与 Google Colab、Kaggle Notebooks、JupyterHub 等云端平台无缝衔接。

主要应用场景

  • 数据分析与可视化
    清洗数据、生成统计图表、探索数据模式。
  • 机器学习与模型开发
    训练模型、调参、实时验证结果。
  • 教育与协作
    创建教学材料,分享可交互的代码示例。
  • 学术研究
    记录实验过程,生成可复现的研究报告。

Jupyter 的核心组件

  1. Jupyter Notebook
    • 经典的单文档界面,适合简单项目。
  2. JupyterLab
    • 新一代集成开发环境(IDE),支持多标签页、文件管理、终端、调试器等模块化布局。
  3. JupyterHub
    • 多用户服务,用于团队或教育机构的集中管理(如大学课程)。

基本使用步骤

  1. 安装
bash 复制代码
pip install jupyterlab  # 安装 JupyterLab
  1. 启动
bash 复制代码
jupyter lab  # 启动 JupyterLab
  1. 创建 Notebook
    • 选择内核(如 Python)并新建 Notebook(.ipynb 文件)。
    • 编写代码块(Cell)或 Markdown 文本,按 Shift+Enter 执行。

扩展功能

  • 插件系统 :通过扩展(如 jupyter_contrib_nbextensions)添加目录、代码折叠等功能。
  • Magic 命令 :使用 %%% 开头的特殊命令(如 %matplotlib inline 显示图表)。
  • 导出格式:支持导出为 HTML、PDF、LaTeX、Markdown 或幻灯片(Reveal.js)。

优势与不足

  • 优点
    直观的交互式开发,适合快速迭代;文档与代码结合,方便协作和展示。
  • 不足
    不适合大型项目(需结合 IDE 使用);调试功能较弱。

Jupyter Notebook(交互笔记本) 快速实战

简单来说, Jupyter Notebook 的作用就是你不需要在IDE编写代码和运行, 而可以直接在网页上编写代码并运行, 这个网页除了代码之外,还可以记录一些其他的文字,类似于一个包含文字和代码的笔记,但是这些代码是可以直接运行的。

接下来进入实际操作环节。以下是一个快速上手的 Jupyter Notebook 示例教程,涵盖安装、基础操作和常用功能:

在此之前,环境需要先安装Python。

1. 安装 Jupyter Notebook
bash 复制代码
# 使用 pip 安装
pip install jupyter
# 或使用 conda(需先安装 Anaconda/Miniconda)
conda install jupyter

这里直接安装, 使用conda 的部分可以参考:AI开发之 ------Anaconda 介绍

安装需要等待一段时间,


2. 启动 Jupyter Notebook

安装完成之后,就可以使用如下命令启动:

bash 复制代码
# 在终端输入以下命令,浏览器会自动打开
jupyter notebook

3. 界面导览

启动之后,会自动打开一个浏览器窗口, 如需要手动通过复制link 打开窗口,则可以在控制台找到对应的link ,比如:

http://localhost:8888/tree?token=c6b84e8419bf7993479541dd2a2dfed9db1011af057c6253

这里的Token 是出于安全的考量。

打开后的页面如下:

  • 主界面 :文件管理页面,可创建/打开 .ipynb 文件。
  • 新建 Notebook :点击右上角 New → 选择 Python 3(或其他内核)。
  • 单元格(Cell):代码或文本的编辑单元,支持运行和切换类型。

4. 基本操作示例
示例 1:运行 Python 代码
python 复制代码
# 在单元格中输入代码,按 Shift+Enter 运行
print("Hello Jupyter!")

输出

plain 复制代码
Hello Jupyter!
示例 2:Markdown 文本
markdown 复制代码
# 这是一个标题
- 列表项 1
- 列表项 2
5. 保存与导出
  • 保存 :点击工具栏保存图标(或 Ctrl+S)。
  • 导出 :通过 File → Download as 导出为 .ipynb.html.pdf 等格式。

注意事项

  • 快捷键 :使用 EscEnter 切换命令/编辑模式,Ctrl+Enter 运行单元格。

参考资源

Jupyter 是数据科学家的"瑞士军刀",将代码、文档和可视化整合在一个界面中,极大提升工作效率和可复现性! 🚀



相关推荐
m0_748554815 小时前
golang如何实现用户订阅偏好管理_golang用户订阅偏好管理实现总结
jvm·数据库·python
smj2302_796826526 小时前
解决leetcode第3911题.移除子数组元素后第k小偶数
数据结构·python·算法·leetcode
阿正呀6 小时前
Redis怎样实现本地缓存的高效失效通知
jvm·数据库·python
2501_901200537 小时前
mysql如何设置InnoDB引擎参数_优化innodb_buffer_pool
jvm·数据库·python
_.Switch7 小时前
东方财富股票数据JS逆向:secids字段和AES加密实战
开发语言·前端·javascript·网络·爬虫·python·ecmascript
Mr_sst7 小时前
Claude Code 部署与使用保姆级教程(2026 最新)
python·ai
yc_12247 小时前
用 Visual Studio 远程调试 Linux:从零到流畅的完整指南
linux·ide·visual studio
瞎某某Blinder7 小时前
DFT学习记录[6]基于 HES06的能带计算+有效质量计算
python·学习·程序人生·数据挖掘·云计算·学习方法
m0_495496418 小时前
mysql处理复杂SQL性能_InnoDB优化器与MyISAM差异
jvm·数据库·python
forEverPlume8 小时前
PHP怎么使用Eloquent Attribute Composition属性组合_Laravel通过组合构建复杂属性【方法】
jvm·数据库·python