VS Code Jupyter Notebook 入门:快速上手指南 – wiki基地


VS Code Jupyter Notebook 入门:快速上手指南

在现代数据科学、机器学习以及交互式编程领域,Jupyter Notebooks 因其强大的交互性、可重复性和易于分享的特性,已成为不可或缺的工具。而将 Jupyter Notebook 的强大能力集成到功能丰富的代码编辑器(IDE)中,无疑能极大地提升开发效率。VS Code (Visual Studio Code) 恰恰提供了优秀的 Jupyter Notebook 支持,将编写代码、运行单元格、可视化数据、甚至调试这些操作无缝整合到一个统一的环境中。

本篇文章旨在为初学者提供一个详细的 VS Code Jupyter Notebook 快速上手指南,帮助你从零开始,轻松驾驭这个强大的组合。

第一步:准备环境 – 安装 VS Code 和 Python

在开始之前,你需要确保你的计算机上已经安装了两个核心组件:

  1. Visual Studio Code (VS Code): 如果你还没有安装 VS Code,请访问其官方网站 https://code.visualstudio.com/ 下载并安装适合你操作系统的版本。VS Code 是一个免费、轻量级但功能强大的代码编辑器。

  2. 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 的支持主要依赖于两个核心扩展:

  1. Python 扩展 (Microsoft 提供): 这是 VS Code 中最核心的 Python 开发扩展,它提供了诸如代码高亮、智能感知 (IntelliSense)、代码格式化、调试等功能,并且包含了对 Jupyter Notebook 的基础支持。

    • 安装方法: 打开 VS Code,点击侧边栏的扩展图标 (或按下 Ctrl+Shift+X)。在搜索框中输入 “Python”,找到由 Microsoft 发布的官方 Python 扩展,点击 “Install” 进行安装。
  2. Jupyter 扩展 (Microsoft 提供): 这个扩展进一步增强了 VS Code 对 Jupyter Notebook 的支持,提供了更丰富的 Notebook 界面功能、变量查看器、单元格调试等。

    • 安装方法: 同样在扩展商店搜索框中输入 “Jupyter”,找到由 Microsoft 发布的官方 Jupyter 扩展,点击 “Install” 进行安装。通常安装了 Python 扩展后,VS Code 会推荐你安装 Jupyter 扩展。

安装完这两个扩展后,可能需要重启 VS Code 使其生效。

第三步:创建你的第一个 Jupyter Notebook

现在,你已经准备好在 VS Code 中创建并运行 Jupyter Notebook 了。有几种方法可以创建:

  1. 通过命令面板:

    • 按下 Ctrl+Shift+P (Windows/Linux) 或 Cmd+Shift+P (macOS) 打开命令面板。
    • 输入 “Create: New Jupyter Notebook” 并选择该命令。
    • VS Code 会在新的编辑器标签页中打开一个空的 Jupyter Notebook 文件。
  2. 通过文件菜单:

    • 点击菜单栏的 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 界面非常直观,主要包含以下几个区域:

  1. 工具栏 (Toolbar): 位于 Notebook 顶部的工具栏,提供了一些常用操作按钮,如:

    • 添加单元格: 用于在当前位置下方添加新的代码或 Markdown 单元格。
    • 运行单元格: 运行当前选中的单元格。
    • 运行所有单元格: 按顺序运行 Notebook 中的所有单元格。
    • 停止: 中断正在运行的内核(用于停止无限循环或长时间运行的代码)。
    • 重启: 重启 Jupyter 内核。这会清除所有已计算的变量和状态。
    • 清除输出: 清除所有单元格的输出。
    • 变量查看器: 打开一个侧边栏,显示当前内核中的所有变量及其值(非常有用的功能!)。
    • 保存: 保存 Notebook 文件 (Ctrl+SCmd+S)。
  2. 内核选择器 (Kernel Selector): 通常位于工具栏的右侧或 VS Code 状态栏的右下角,显示当前 Notebook 正在使用的 Python 环境(内核)。点击它可以切换到其他已检测到的 Python 环境。

  3. 单元格区域 (Cell Area): 这是 Notebook 的主要编辑区域,由一个个独立的“单元格”组成。单元格有两种主要类型:

    • 代码单元格 (Code Cell): 用于编写和执行 Python 代码。在单元格左侧有运行按钮,代码区域下方是输出区域,用于显示代码执行结果、错误信息或可视化图表。
    • Markdown 单元格 (Markdown Cell): 用于编写说明文本、公式、图片等,支持 Markdown 格式。用于为 Notebook 添加解释和文档。
  4. 单元格操作按钮: 当鼠标悬停在单元格上时,左侧或上方会出现一些小按钮,用于运行当前单元格、添加单元格(在其上方或下方)、删除单元格等。

第五步:编写和运行代码单元格

这是 Jupyter Notebook 的核心功能。

  1. 选择单元格类型: 新创建的单元格默认为代码单元格。如果你想切换类型,可以点击单元格右上角的下拉菜单,选择 “Code” 或 “Markdown”。

  2. 编写代码: 在代码单元格中输入你的 Python 代码。例如,输入:
    python
    print("Hello from VS Code Notebook!")
    x = 10
    y = 20
    z = x + y

  3. 运行单元格: 有几种方式运行代码单元格:

    • 点击单元格左侧的绿色“运行”按钮。
    • 选中单元格后,按下 Shift + Enter (运行当前单元格并跳转到下一个单元格)。
    • 选中单元格后,按下 Ctrl + Enter (Windows/Linux) 或 Cmd + Enter (macOS) (仅运行当前单元格,不移动焦点)。
    • 选中单元格后,按下 Alt + Enter (运行当前单元格并在下方插入一个新的代码单元格)。
  4. 查看输出: 代码执行后,输出会显示在代码单元格下方。对于上面的例子,你会看到:
    Hello from VS Code Notebook!

  5. 交互性: Jupyter Notebook 的一个关键特性是它的状态是持久的。在一个单元格中定义的变量(如上面的 x, y, z)可以在后续的任何代码单元格中访问和使用,前提是前面的单元格已经被成功运行过

    • 尝试在下面的新代码单元格中输入:
      python
      print(z)
    • 运行这个新单元格,你会看到输出 30

第六步:使用 Markdown 单元格编写文档

Markdown 单元格用于为你的代码和分析过程添加解释、说明、标题等,使 Notebook 更易于理解和分享。

  1. 创建 Markdown 单元格: 点击工具栏上的 “Add Cell” 按钮,然后将新单元格类型改为 “Markdown”。或者直接点击现有单元格右侧或下方的 “+ Markdown” 按钮。

  2. 编写 Markdown 内容: 在 Markdown 单元格中输入符合 Markdown 语法的文本。例如:
    “`markdown
    # 这是我的第一个 Notebook

    这是一个简单的示例,演示如何在 VS Code 中使用 Jupyter Notebook。

    数据分析步骤

    1. 加载数据
    2. 数据清洗
    3. 模型训练

    注意: 代码单元格中的变量是相互关联的。
    “`

  3. 渲染 Markdown: 运行 Markdown 单元格 (同样可以使用 Shift+Enter 或点击单元格左侧的运行按钮)。VS Code 会将 Markdown 语法渲染成格式化的文本。你可以点击单元格右上角的“预览”按钮(一个看起来像眼睛的图标)来在编辑模式下预览渲染效果。再次点击则切换回编辑模式。

第七步:管理内核和环境

正确选择和管理 Python 内核是顺利使用 Jupyter Notebook 的重要环节。

  1. 选择内核:

    • 在 Notebook 界面的右上角或 VS Code 状态栏右下角,你会看到当前的 Python 环境(例如 “Python 3.9.7 (‘my_env’) ~/.conda/envs/my_env/python”)。
    • 点击它,VS Code 会显示所有已检测到的 Python 环境列表(包括全局环境和虚拟环境)。
    • 选择你希望 Notebook 使用的环境。确保你选择的环境中安装了你需要的所有库(如 pandas, numpy, matplotlib, jupyter 等)。如果缺少库,你需要打开终端并使用该环境对应的包管理器(如 pipconda)进行安装。
  2. 虚拟环境的重要性: 使用虚拟环境是最佳实践。它允许你为每个项目创建独立的 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 的内核选择器中找到并选中你的虚拟环境。
  3. 重启/中断内核:

    • 如果你的代码陷入死循环或运行时间过长,可以点击工具栏上的“停止”按钮来中断内核执行。
    • 如果内核出现问题(例如,变量状态混乱),可以点击工具栏上的“重启”按钮。重启内核会清空所有内存中的变量和状态,你需要重新运行必要的单元格来恢复工作状态。

第八步:利用 VS Code 的强大功能

将 Jupyter Notebook 集成到 VS Code 的一大优势是可以利用 VS Code 本身提供的许多强大功能:

  1. 智能感知 (IntelliSense): 在代码单元格中输入代码时,VS Code 会提供代码补全、函数签名提示、模块成员列表等,大大提高编码效率。

  2. 变量查看器 (Variable Viewer): 点击工具栏上的变量查看器按钮,会在侧边栏打开一个面板,实时显示当前内核中所有变量的名称、类型、大小和值(对于复杂对象如 Pandas DataFrame,可以展开查看内容),这对于数据探索和调试非常有帮助。

  3. 调试 (Debugging): VS Code 提供了对 Jupyter Notebook 单元格的调试支持。

    • 在代码单元格左侧的行号旁边点击,可以设置断点(出现一个红点)。
    • 右键点击单元格,选择 “Debug Cell” (调试单元格)。
    • VS Code 会启动调试模式,代码执行到断点时会暂停,你可以单步执行、查看变量值、检查调用堆栈等,就像调试普通 Python 脚本一样。这是 VS Code 集成 Jupyter Notebook 的一个重要优势,弥补了传统 Jupyter 界面调试能力的不足。
  4. 代码格式化: 可以使用 VS Code 的代码格式化功能(如 Shift+Alt+F)来自动整理代码单元格中的代码风格。

  5. 版本控制集成: 如果你的 Notebook 文件所在的文件夹是一个 Git 仓库,VS Code 的源代码管理功能可以轻松地跟踪 Notebook 文件的改动,进行提交、分支管理等。注意,.ipynb 文件是 JSON 格式,其改动历史可能不太直观,但仍然是版本控制的重要部分。

  6. 主题和自定义设置: 你可以根据个人喜好调整 VS Code 的主题、字体、快捷键等,打造个性化的开发环境。

第九步:保存和导出 Notebook

  1. 保存: 按下 Ctrl+S (Windows/Linux) 或 Cmd+S (macOS) 即可保存你的 Notebook。文件会保存为 .ipynb 格式。

  2. 导出: 有时你需要将 Notebook 的内容导出为其他格式,以便分享或打印。

    • 在 Notebook 界面的右上角,点击导出按钮(一个向下箭头的图标)。
    • VS Code 提供了多种导出格式,如 Python Script (.py)、HTML (.html)、PDF (.pdf) 等。
    • 注意: 导出为 PDF 可能需要安装额外的工具,例如 nbconvertpip 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 这个强大的组合来完成你的数据科学和编程任务。

祝你使用愉快!


发表评论

您的邮箱地址不会被公开。 必填项已用 * 标注

滚动至顶部