Skip to content

getting_started_jupyter

与 IPython 内核交互最常见的方式是通过 Jupyter 的 Web 界面,例如 JupyterLab 或经典的 Jupyter Notebook。让我们看看如何启动并执行基本操作。

打开你的终端(Terminal)或 Anaconda Prompt,导航到你想存放 Notebook 的目录,然后输入:

jupyter lab

此命令会启动 JupyterLab 服务器,并应自动在你默认的 Web 浏览器中打开一个指向 JupyterLab 界面的新标签页(通常地址是 http://localhost:8888/lab)。

JupyterLab 界面通常在左侧显示文件浏览器,中间是主要工作区,还可能有其他面板用于运行终端、内核等。

如果你偏好经典界面,可以使用:

jupyter notebook

这会在你的浏览器中打开经典的 Notebook Dashboard(控制面板),显示你启动命令所在目录的文件列表。

在 JupyterLab 中,使用文件浏览器中的 ’+’ 按钮或 ‘Launcher’ 标签页来创建新的 Notebook,通常选择 ‘Python 3 (ipykernel)’ 内核。

在经典 Notebook Dashboard 中,点击 ‘New’ 按钮并选择 ‘Python 3’。

这会打开一个新的浏览器标签页,其中包含一个空的 Notebook 文件(.ipynb)。

Notebook 由单元格 (Cells) 组成。单元格是用于存放代码或文本的容器。主要的两种单元格类型是:

  • 代码单元格 (Code Cells): 包含将由内核执行的代码(例如 Python 代码)。它们有一个 In [ ]: 提示符。
  • Markdown 单元格 (Markdown Cells): 包含使用 Markdown 语法格式化的文本,支持富文本、标题、列表、链接、图片和公式。它们用于文档和叙述说明。

你可以使用工具栏中的下拉菜单或键盘快捷键来改变当前选中单元格的类型(例如,按 Esc 进入命令模式,然后按 m 表示 Markdown,按 y 表示 Code)。

要执行代码单元格中的代码:

  • 选中该单元格。
  • 按 Shift + Enter(执行该单元格并选中/新建下方单元格)。
  • 按 Ctrl + Enter(执行该单元格并保持选中)。
  • 按 Alt + Enter(执行该单元格并在下方插入新单元格)。

当你执行一个代码单元格时:

  1. 代码被发送到 IPython 内核。
  2. 内核执行代码。
  3. 任何输出(来自 print 语句,或单元格中最后一个表达式的值)将显示在单元格下方。
  4. 运行期间,提示符编号 In [ ]: 会变为 In [*]:,完成后变为 In [N]:(其中 N 是执行计数)。
# 示例代码单元
import time
print("Starting calculation...")
time.sleep(2)
result = 10 + 5
print("Calculation finished.")
result # The value of the last expression is displayed as output
# 执行后的输出:
# Starting calculation...
# Calculation finished.
# Out[N]: 15

在 Markdown 单元格中输入使用 Markdown 语法的文本。执行该单元格(Shift+Enter)即可将其渲染成格式化文本。

# Example Markdown Cell (Raw Text)
# My Analysis Plan
This notebook explores the dataset `data.csv`.
1. Load the data
2. Perform initial cleaning
3. Generate visualizations
See [Markdown Cheatsheet](https://www.markdownguide.org/cheat-sheet/) for syntax.
# 执行 Shift+Enter 后的渲染输出:
# (包含标题、列表和链接的格式化文本)

Notebook 会自动定期保存,你也可以使用软盘图标、Ctrl + S 或 Cmd + S 手动保存。

要关闭 Jupyter 服务器,回到启动 jupyter lab 或 jupyter notebook 的终端,并按下 Ctrl + C 两次。

以上涵盖了启动 Jupyter 和使用 Notebook 单元格的基础知识。后续章节将深入探讨在此环境中可用的特定 IPython 功能。