VS Code Jupyter Notebook 入门:快速上手指南
在现代数据科学、机器学习以及交互式编程领域,Jupyter Notebooks 因其强大的交互性、可重复性和易于分享的特性,已成为不可或缺的工具。而将 Jupyter Notebook 的强大能力集成到功能丰富的代码编辑器(IDE)中,无疑能极大地提升开发效率。VS Code (Visual Studio Code) 恰恰提供了优秀的 Jupyter Notebook 支持,将编写代码、运行单元格、可视化数据、甚至调试这些操作无缝整合到一个统一的环境中。
本篇文章旨在为初学者提供一个详细的 VS Code Jupyter Notebook 快速上手指南,帮助你从零开始,轻松驾驭这个强大的组合。
第一步:准备环境 – 安装 VS Code 和 Python
在开始之前,你需要确保你的计算机上已经安装了两个核心组件:
-
Visual Studio Code (VS Code): 如果你还没有安装 VS Code,请访问其官方网站 https://code.visualstudio.com/ 下载并安装适合你操作系统的版本。VS Code 是一个免费、轻量级但功能强大的代码编辑器。
-
Python: Jupyter Notebook 运行依赖于 Python 环境。你需要安装 Python。推荐通过官方网站 https://www.python.org/downloads/ 下载安装最新的 Python 版本。如果你进行数据科学开发,更推荐安装 Anaconda 或 Miniconda,它们集成了 Python 以及许多常用的科学计算库(如 NumPy, Pandas, Matplotlib 等),并且提供方便的环境管理工具。
- 提示: 强烈建议使用虚拟环境(如
venv
,conda
)来隔离不同项目的依赖。这将有助于避免库版本冲突。
- 提示: 强烈建议使用虚拟环境(如
第二步:安装必要的 VS Code 扩展
VS Code 对 Jupyter Notebook 的支持主要依赖于两个核心扩展:
-
Python 扩展 (Microsoft 提供): 这是 VS Code 中最核心的 Python 开发扩展,它提供了诸如代码高亮、智能感知 (IntelliSense)、代码格式化、调试等功能,并且包含了对 Jupyter Notebook 的基础支持。
- 安装方法: 打开 VS Code,点击侧边栏的扩展图标 (或按下
Ctrl+Shift+X
)。在搜索框中输入 “Python”,找到由 Microsoft 发布的官方 Python 扩展,点击 “Install” 进行安装。
- 安装方法: 打开 VS Code,点击侧边栏的扩展图标 (或按下
-
Jupyter 扩展 (Microsoft 提供): 这个扩展进一步增强了 VS Code 对 Jupyter Notebook 的支持,提供了更丰富的 Notebook 界面功能、变量查看器、单元格调试等。
- 安装方法: 同样在扩展商店搜索框中输入 “Jupyter”,找到由 Microsoft 发布的官方 Jupyter 扩展,点击 “Install” 进行安装。通常安装了 Python 扩展后,VS Code 会推荐你安装 Jupyter 扩展。
安装完这两个扩展后,可能需要重启 VS Code 使其生效。
第三步:创建你的第一个 Jupyter Notebook
现在,你已经准备好在 VS Code 中创建并运行 Jupyter Notebook 了。有几种方法可以创建:
-
通过命令面板:
- 按下
Ctrl+Shift+P
(Windows/Linux) 或Cmd+Shift+P
(macOS) 打开命令面板。 - 输入 “Create: New Jupyter Notebook” 并选择该命令。
- VS Code 会在新的编辑器标签页中打开一个空的 Jupyter Notebook 文件。
- 按下
-
通过文件菜单:
- 点击菜单栏的
File
->New File...
。 - 在弹出的选项中选择 “Jupyter Notebook”。
- 或者,你也可以先创建一个新文件 (
File
->New File
),然后将其保存为.ipynb
扩展名(例如my_first_notebook.ipynb
)。VS Code 会自动识别并将其作为 Jupyter Notebook 打开。
- 点击菜单栏的
无论哪种方式,你都会看到一个类似于网页版 Jupyter Notebook 的界面,但它集成在 VS Code 的编辑器中。
第四步:认识 Jupyter Notebook 界面
VS Code 中的 Jupyter Notebook 界面非常直观,主要包含以下几个区域:
-
工具栏 (Toolbar): 位于 Notebook 顶部的工具栏,提供了一些常用操作按钮,如:
- 添加单元格: 用于在当前位置下方添加新的代码或 Markdown 单元格。
- 运行单元格: 运行当前选中的单元格。
- 运行所有单元格: 按顺序运行 Notebook 中的所有单元格。
- 停止: 中断正在运行的内核(用于停止无限循环或长时间运行的代码)。
- 重启: 重启 Jupyter 内核。这会清除所有已计算的变量和状态。
- 清除输出: 清除所有单元格的输出。
- 变量查看器: 打开一个侧边栏,显示当前内核中的所有变量及其值(非常有用的功能!)。
- 保存: 保存 Notebook 文件 (
Ctrl+S
或Cmd+S
)。
-
内核选择器 (Kernel Selector): 通常位于工具栏的右侧或 VS Code 状态栏的右下角,显示当前 Notebook 正在使用的 Python 环境(内核)。点击它可以切换到其他已检测到的 Python 环境。
-
单元格区域 (Cell Area): 这是 Notebook 的主要编辑区域,由一个个独立的“单元格”组成。单元格有两种主要类型:
- 代码单元格 (Code Cell): 用于编写和执行 Python 代码。在单元格左侧有运行按钮,代码区域下方是输出区域,用于显示代码执行结果、错误信息或可视化图表。
- Markdown 单元格 (Markdown Cell): 用于编写说明文本、公式、图片等,支持 Markdown 格式。用于为 Notebook 添加解释和文档。
-
单元格操作按钮: 当鼠标悬停在单元格上时,左侧或上方会出现一些小按钮,用于运行当前单元格、添加单元格(在其上方或下方)、删除单元格等。
第五步:编写和运行代码单元格
这是 Jupyter Notebook 的核心功能。
-
选择单元格类型: 新创建的单元格默认为代码单元格。如果你想切换类型,可以点击单元格右上角的下拉菜单,选择 “Code” 或 “Markdown”。
-
编写代码: 在代码单元格中输入你的 Python 代码。例如,输入:
python
print("Hello from VS Code Notebook!")
x = 10
y = 20
z = x + y -
运行单元格: 有几种方式运行代码单元格:
- 点击单元格左侧的绿色“运行”按钮。
- 选中单元格后,按下
Shift + Enter
(运行当前单元格并跳转到下一个单元格)。 - 选中单元格后,按下
Ctrl + Enter
(Windows/Linux) 或Cmd + Enter
(macOS) (仅运行当前单元格,不移动焦点)。 - 选中单元格后,按下
Alt + Enter
(运行当前单元格并在下方插入一个新的代码单元格)。
-
查看输出: 代码执行后,输出会显示在代码单元格下方。对于上面的例子,你会看到:
Hello from VS Code Notebook!
-
交互性: Jupyter Notebook 的一个关键特性是它的状态是持久的。在一个单元格中定义的变量(如上面的
x
,y
,z
)可以在后续的任何代码单元格中访问和使用,前提是前面的单元格已经被成功运行过。- 尝试在下面的新代码单元格中输入:
python
print(z) - 运行这个新单元格,你会看到输出
30
。
- 尝试在下面的新代码单元格中输入:
第六步:使用 Markdown 单元格编写文档
Markdown 单元格用于为你的代码和分析过程添加解释、说明、标题等,使 Notebook 更易于理解和分享。
-
创建 Markdown 单元格: 点击工具栏上的 “Add Cell” 按钮,然后将新单元格类型改为 “Markdown”。或者直接点击现有单元格右侧或下方的 “+ Markdown” 按钮。
-
编写 Markdown 内容: 在 Markdown 单元格中输入符合 Markdown 语法的文本。例如:
“`markdown
# 这是我的第一个 Notebook这是一个简单的示例,演示如何在 VS Code 中使用 Jupyter Notebook。
数据分析步骤
- 加载数据
- 数据清洗
- 模型训练
注意: 代码单元格中的变量是相互关联的。
“` -
渲染 Markdown: 运行 Markdown 单元格 (同样可以使用
Shift+Enter
或点击单元格左侧的运行按钮)。VS Code 会将 Markdown 语法渲染成格式化的文本。你可以点击单元格右上角的“预览”按钮(一个看起来像眼睛的图标)来在编辑模式下预览渲染效果。再次点击则切换回编辑模式。
第七步:管理内核和环境
正确选择和管理 Python 内核是顺利使用 Jupyter Notebook 的重要环节。
-
选择内核:
- 在 Notebook 界面的右上角或 VS Code 状态栏右下角,你会看到当前的 Python 环境(例如 “Python 3.9.7 (‘my_env’) ~/.conda/envs/my_env/python”)。
- 点击它,VS Code 会显示所有已检测到的 Python 环境列表(包括全局环境和虚拟环境)。
- 选择你希望 Notebook 使用的环境。确保你选择的环境中安装了你需要的所有库(如
pandas
,numpy
,matplotlib
,jupyter
等)。如果缺少库,你需要打开终端并使用该环境对应的包管理器(如pip
或conda
)进行安装。
-
虚拟环境的重要性: 使用虚拟环境是最佳实践。它允许你为每个项目创建独立的 Python 环境,安装该项目所需的特定版本的库,而不会影响到系统或其他项目的环境。
- 如果你使用的是 Anaconda/Miniconda,可以在终端中使用
conda create -n my_env python=3.9
创建环境,然后conda activate my_env
激活环境,并在其中安装库。 - 如果你使用标准 Python 搭配
venv
,可以在项目文件夹中运行python -m venv .venv
创建虚拟环境,然后激活(Windows:.venv\Scripts\activate
, Linux/macOS:source .venv/bin/activate
),再使用pip install ...
安装库。 - 创建并安装好库后,在 VS Code 的内核选择器中找到并选中你的虚拟环境。
- 如果你使用的是 Anaconda/Miniconda,可以在终端中使用
-
重启/中断内核:
- 如果你的代码陷入死循环或运行时间过长,可以点击工具栏上的“停止”按钮来中断内核执行。
- 如果内核出现问题(例如,变量状态混乱),可以点击工具栏上的“重启”按钮。重启内核会清空所有内存中的变量和状态,你需要重新运行必要的单元格来恢复工作状态。
第八步:利用 VS Code 的强大功能
将 Jupyter Notebook 集成到 VS Code 的一大优势是可以利用 VS Code 本身提供的许多强大功能:
-
智能感知 (IntelliSense): 在代码单元格中输入代码时,VS Code 会提供代码补全、函数签名提示、模块成员列表等,大大提高编码效率。
-
变量查看器 (Variable Viewer): 点击工具栏上的变量查看器按钮,会在侧边栏打开一个面板,实时显示当前内核中所有变量的名称、类型、大小和值(对于复杂对象如 Pandas DataFrame,可以展开查看内容),这对于数据探索和调试非常有帮助。
-
调试 (Debugging): VS Code 提供了对 Jupyter Notebook 单元格的调试支持。
- 在代码单元格左侧的行号旁边点击,可以设置断点(出现一个红点)。
- 右键点击单元格,选择 “Debug Cell” (调试单元格)。
- VS Code 会启动调试模式,代码执行到断点时会暂停,你可以单步执行、查看变量值、检查调用堆栈等,就像调试普通 Python 脚本一样。这是 VS Code 集成 Jupyter Notebook 的一个重要优势,弥补了传统 Jupyter 界面调试能力的不足。
-
代码格式化: 可以使用 VS Code 的代码格式化功能(如
Shift+Alt+F
)来自动整理代码单元格中的代码风格。 -
版本控制集成: 如果你的 Notebook 文件所在的文件夹是一个 Git 仓库,VS Code 的源代码管理功能可以轻松地跟踪 Notebook 文件的改动,进行提交、分支管理等。注意,
.ipynb
文件是 JSON 格式,其改动历史可能不太直观,但仍然是版本控制的重要部分。 -
主题和自定义设置: 你可以根据个人喜好调整 VS Code 的主题、字体、快捷键等,打造个性化的开发环境。
第九步:保存和导出 Notebook
-
保存: 按下
Ctrl+S
(Windows/Linux) 或Cmd+S
(macOS) 即可保存你的 Notebook。文件会保存为.ipynb
格式。 -
导出: 有时你需要将 Notebook 的内容导出为其他格式,以便分享或打印。
- 在 Notebook 界面的右上角,点击导出按钮(一个向下箭头的图标)。
- VS Code 提供了多种导出格式,如 Python Script (
.py
)、HTML (.html
)、PDF (.pdf
) 等。 - 注意: 导出为 PDF 可能需要安装额外的工具,例如
nbconvert
(pip install nbconvert
)以及可能需要安装 LaTeX。
为什么选择在 VS Code 中使用 Jupyter Notebook?
将 Jupyter Notebook 结合 VS Code 使用,带来了许多优势:
- 统一的开发环境: 你可以在同一个窗口中编写 Python 脚本、模块,同时进行交互式的数据探索和分析,无需在浏览器和编辑器之间来回切换。
- 强大的代码编辑功能: 享受 VS Code 提供的智能感知、代码补全、格式化、重构等高级编辑功能。
- 卓越的调试体验: VS Code 提供了比传统 Jupyter 界面强大得多的 Notebook 调试能力,可以设置断点、单步执行单元格代码。
- 集成的版本控制: 利用 VS Code 内置的 Git 支持,方便地管理 Notebook 文件的版本历史。
- 丰富的扩展生态: 除了 Python 和 Jupyter 扩展,你还可以安装其他 VS Code 扩展来增强功能,例如 Docker 支持、数据库工具等。
- 性能和稳定性: VS Code 的编辑器内核通常比基于浏览器的界面响应更快速、更稳定。
总结与下一步
恭喜你!通过以上步骤,你已经掌握了在 VS Code 中创建、运行和管理 Jupyter Notebook 的基本方法。你学会了如何安装必要工具、创建 Notebook 文件、认识界面、编写和运行代码及 Markdown 单元格、管理内核,并了解了 VS Code 集成带来的额外便利。
这只是一个快速上手指南,VS Code 对 Jupyter Notebook 的支持还有更多高级功能等待你去探索,例如:
- 使用自定义的环境变量。
- 连接到远程的 Jupyter 服务器。
- 更深入地使用变量查看器进行数据分析。
- 探索更多 Jupyter 相关的 VS Code 设置。
接下来,你可以尝试使用 Pandas 加载数据集、使用 Matplotlib 或 Seaborn 绘制图表,在 Notebook 中进行实际的数据探索和分析。多加练习,你将能更高效地利用 VS Code 和 Jupyter Notebook 这个强大的组合来完成你的数据科学和编程任务。
祝你使用愉快!