【3】jupyter单元格Cell操作

Jupyter Notebook 的核心功能单位是 Cell (单元格)。它就像一个灵活的容器,能容纳从可执行的代码到格式丰富的文本等多种内容,可以将其视为一个强大的电子笔记本。我们可以通过以下表格快速了解几种主要单元格类型:

类型 主要用途 执行效果与说明
💻 代码 编写和执行代码 (默认类型) 执行并显示代码输出,可运行 pythonRbash 等。
📝 Markdown 撰写格式丰富的文本 执行后渲染,支持标题、列表、表格、图片、视频、数学公式等。
📄 Raw NBConvert 存放不被执行的原始文本 执行时不会产生输出,在转换为其他格式 (如 LaTeX) 时会被原样保留。

⌨️ 核心操作

Jupyter Notebook 有两种核心操作模式,配合快捷键可以极大提升效率:

  • 命令模式 (按 Esc 进入) :单元格边框为蓝色,用于操作单元格本身
  • 编辑模式 (按 Enter 进入) :单元格边框为绿色,用于编辑单元格内的内容

⌨️ 高效快捷键

操作分类 快捷键 作用说明
🟦 命令模式
执行 & 移动 Shift + Enter 运行当前单元格,并选中下一个。
执行 & 插入 Alt + Enter 运行当前单元格,并在下方插入新单元格。
插入单元格 A / B 在当前单元格上方 (Above) / 下方 (Below) 插入新单元格。
删除单元格 D D 连续按两次 D 键,删除当前单元格。
类型转换 Y / M 将当前单元格转换为代码 (Code) 或 Markdown 类型。
合并单元格 Shift + M 合并选中的多个单元格。
显示帮助 H 弹出所有快捷键的快速参考。
🟩 编辑模式
执行 & 移动 Shift + Enter 运行当前单元格,并选中下一个。
执行 & 插入 Alt + Enter 运行当前单元格,并在下方插入新单元格。
代码补全 Tab 自动补全变量名或函数名。
函数提示 Shift + Tab 显示函数或对象的文档字符串 (Docstring)。
分割单元格 Ctrl + Shift + - 从光标位置将当前单元格一分为二。

🧙 魔法命令

魔法命令 (Magic Commands) 是 Jupyter 提供的一组以 %%% 开头的特殊命令,用于增强和扩展 Notebook 的功能。它们是 Jupyter 区别于普通 Python 脚本的重要功能。

常用行魔法 (以 % 开头)
  • %timeit:多次运行单行代码,并给出平均执行时间,用于性能评估。
  • %run :在 Notebook 中运行外部的 .py 脚本文件。
  • %load:将外部脚本或示例代码的内容加载到当前单元格中。
  • %who / %whos:列出当前交互环境中定义的所有变量及其信息。
  • %debug:在上一个异常处激活交互式调试器,方便排查问题。
  • %pwd / %ls / %cd:用于查看、列出和切换当前工作目录的 Shell 命令。
  • %env:列出当前系统所有的环境变量。
  • %matplotlib inline:设置 Matplotlib 绘图库,使其图表直接嵌入在 Notebook 中显示。
  • %lsmagic:列出当前环境中所有可用的魔法命令。
常用单元魔法 (以 %% 开头)
  • %%timeit:运行整个单元格中的代码块,并测量其平均执行时间。
  • %%writefile:将单元格的全部内容写入到指定文件名的外部文件中。
  • %%bash:将单元格中的所有内容作为 Bash Shell 脚本执行。
  • %%html:将单元格中的内容渲染为 HTML 代码,并在输出区域显示。
  • %%javascript:执行单元格内的 JavaScript 代码,常用于网页交互。
  • %%latex:将单元格中的内容渲染为 LaTeX 数学公式。
  • %%capture:捕获并隐藏单元格的标准输出和标准错误,便于调试。
  • %%script :允许你使用任何系统上已安装的解释器(如 ruby, perl, R)来运行当前单元格的内容。

🖥️ 执行 Shell 命令

你可以在代码单元格中,通过在前面加上感叹号 ! 来直接执行 Shell 命令。例如:

  • 使用 !ls -l 列出当前目录下的文件。
  • 使用 !pip install numpy 在 Notebook 中直接安装 Python 包。

📋 丰富的媒体内容

Jupyter 支持在 Markdown 单元格代码单元格的输出 中插入丰富的媒体内容。

  • Markdown 单元格 :支持标准 Markdown 语法,可以方便地插入图片、表格、列表等。
    • 插入图片![图片描述](图片的URL或本地路径)
    • 插入视频 :粘贴支持的视频链接,或在 Markdown 单元格中编写 <video> 标签。
    • 数学公式 :使用 LaTeX 语法,例如 $E = mc^2$ 生成行内公式,或 $$E = mc^2$$ 生成独立的公式块。
  • 代码单元格的输出 :利用 IPython.display 模块,可以创建更高级的富文本输出。
    • 插入图片from IPython.display import Image; Image("图片的URL")
    • 嵌入视频from IPython.display import YouTubeVideo; YouTubeVideo("视频ID")
    • 显示HTMLfrom IPython.display import HTML; HTML("<h1>Hello World!</h1>")
    • 显示JSONfrom IPython.display import JSON; JSON({"key": "value"})

💡 小贴士

  • 查看帮助 :在任何魔法命令后加 ? 可查看详细帮助,例如 %timeit?。同时,%quickref 命令可快速查看常用魔法命令的参考。
  • 获取环境信息 :使用 %lsmagic 可以列出当前环境中所有可用的魔法命令,避免因环境差异导致命令找不到的情况。
  • 变量交互 :Shell 命令中可以通过 {variable_name} 的形式引用 Python 变量。例如:dir_name = "data"; !mkdir -p {dir_name}
相关推荐
安_13 小时前
如何构建和使用向量索引?HNSW 和 IVF 有什么区别?
python·ai
counting money14 小时前
Java IO流详解:从InputStream到文件操作实战
java·开发语言·python
坚持学习前端日记14 小时前
Python SQLAlchemy ORM 从0到1精通实战手册(基础到复杂高阶)
数据库·python·oracle
北斗落凡尘15 小时前
LangGraph 入门实战(11)--输出模式
后端·python·langchain
雪碧聊技术15 小时前
安装Python(保姆级教程)
python·版本更新·python下载
++==16 小时前
JSON和Python的 四种核心容器
python·json
张龙68718 小时前
uv 全面指南:比 pip 快 100 倍的 Python 包管理器,从安装到团队落地
后端·python
@HNUSTer18 小时前
Python数据可视化科技图表绘制系列教程(八)
python·数据可视化·科技论文·专业制图·科研图表
专注仿真19 小时前
问答大模型技术方案算法实现-熵权法融合算法 + 交叉编码器重排算法
人工智能·python·算法·语言模型·问答大模型关键算法·熵权融合算法·交叉编码器重排算法
满怀冰雪20 小时前
22-使用 PaddleClas 快速训练图像分类模型
人工智能·python·机器学习·分类·数据挖掘·paddlepaddle