项目名称:Jupyter notebook 操作说明详解


文章目录


1 启动

1
2
3
4
# 开启jupyter notebook
jupyter notebook
# 开启jupyterlab
jupyter lab

关闭 jupyter:在终端中按下键盘上的 Ctrl+C

2 界面介绍

在这里插入图片描述

快捷命令栏功能:保存文件,添加新 cell,剪切选中的 cell,复制选中的 cell,粘贴选中的 cell,将选中 cell 上移,将选中 cell 下移,执行选中的 cell,终止 kernel,重启 kernel,重启 kernel 并重新运行所有 cell。

Code 点击的四个选项:

  • Code:写 python 代码

  • MarkDown:写 MarkDown 代码,通常用于注释

  • Raw NBConvert:一个转换工具

  • Heading:快捷添加 MarkDown 标题

3 常用菜单操作:

  • 修改文件名:可以点击文件名称,在弹出的框中直接修改或者 File—>Rename

  • 新建 Notebook 文件:File—>New Notebook—>python3

  • 下载文件:File—>Download as —> 选择目标格式即可下载

  • 合并 cell:Edit—>Merge Cell Above 或 Merge Cell Below

  • 重启 Kernel 并清除所有输出:Kernel—>Restart & Clear Output

  • 重启 Kernel 并运行所有 cell:Kernel—>Restart & Run All

  • 停止当前 Notebook 运行:Kernel—>ShutDown

4 命令模式和编辑模式

在这里插入图片描述
  • 每一个 cell 有两种模式:命令模式和编辑模式。

    • 最左侧是蓝色的条是命令模式
    • 最左侧是绿色的条表示编辑模式 (此时 cell 中有光标,可以进行代码编写)。
  • 在命令模式下,按下 enter 或者鼠标单击代码框可以进入编辑模式。

  • 在编辑模式下,按下 esc 或者 鼠标单击代码框左侧区域 即可进入命令模式。

5 快捷操作

5.1 代码运行

  • ctrl + enter :运行当前 cell 的代码,运行完后依然保持在当前 cell
  • shift + enter :运行当前 cell 的代码,运行完后跳转到下一个 cell,如果是最后一个 cell 则会新增一个
  • 工具条上的 Run

5.2 创建新 cell

  • 命令模式下,按下字母 a (above),会在当前 cell 上方增加一个 cell
  • 命令模式下,按下字母 b (blove),会在当前 cell 下方增加一个 cell
  • 工具条上的 按钮

5.3 删除当前 cell

  • 命令模式下,按下字母 x ,即可删除当前 cell
  • 命令模式下,连续两次按下字母 d ,即可删除当前 cell
  • 工具条上的 剪刀 按钮

5.4 合并 cell

  • 命令模式下,选中多个 cell, shift + M 可以进行合并
  • Edit—>Merge Cell Above/Merge Cell Down

5.5 拆分 cell

  • 编辑模式下,以光标所在之处为分界点, ctrl+shift+'-' ,可以进 cell 的拆分
  • Edit—>Split Cell

5.6 保存代码

  • 命令模式下,按下字母 s ,就能创建一个 checkpoint
  • 工具条上的 保存按钮
  • File—>Save and Checkpoint

5.7 查找替换

  • 编辑模式下, ESC + F
  • Edit—>Find and Replace

5.8 折叠输出

  • 编辑模式下, ESC+O
  • 在 cell 左侧位置上 双击 即可折叠
  • Cell—>Current Output—>Toggle

5.9 显示代码行号

  • 命令模式下,按下字母 l (L 的小写,键盘 k 右侧的 l) 键,就能显示当前 cell 的行号
  • shift + l ,显示所有 cell 的行号
  • View—>Toggle Line Numbers

5.10 切换代码类型

  • 命令模式下,按下 m 切换到 MarkDown 模式,再按下 y 切换到 code 模式
  • 工具条上 手动切换
  • Cell—>Cell Type—>选择相应的代码类型

5.11 注释代码

  • 选中代码,command+/ (windows 下是 Ctrl+/)

5.12 Tab 键的使用

  • 只输入变量或者函数的前几个字母,按下 tab 可以自动补全
  • 已经输入函数,连续按下 shift+tab 可以查询函数的具体用法,(一直可以按 4 次)

5.13 执行 shell 命令

  • 英文状态下的感叹号 + 普通的 shell 命令,例如: !pwd!ls

6 魔法函数

在这里插入图片描述

7 Jupyter 扩展

1
pip install jupyter_contrib_nbextensions && jupyter contrib nbextension install
在这里插入图片描述

安装完之后,重新启动一下 jupyter 服务,就可以看到 Nbextensions 选项卡。我们只需要勾选相应的插件,在每一个 notebook 的工具条中就会出现相应的扩展。

在这里插入图片描述

8 修改主题、字体等

1
2
3
4
5
安装此工具:
pip install --upgrade jupyterthemes

查看可用主题:
jt -l

8.1 Table of Contents

这个扩展一般用于整个文件的目录很多的时候。首先在 Nbextensions 选项卡中勾选该插件,然后在工具条中就可以看到该扩展按钮。如果我们在 notebook 中使用了 MarkDown 设置了我们的标题,点击该扩展,就会在左侧生成目录,点击左侧的齿轮,可以在最顶部添加一个 cell 专门用来显示目录。点击左侧和顶部的链接都可以快速跳转到相应的位置。还可以进行目录的折叠。注意到此时菜单栏上也多了一个 “Navigate” 标签,同样显示了目录的情况。

在这里插入图片描述

8.2 Autopep8

这是一个将代码按照 PEP8 进行格式化的插件,前提是需要通过 pip install autopep8 安装 autopep8,安装完之后需要重启 jupyter notebook 服务才能生效。同样在 Nbextention 选项卡中勾选 Autopep8,在工具栏中会多一个 “锤子” 一样的按钮,可以帮助我们排版代码,使其符合 pep8 标准。

在这里插入图片描述

8.3 Variable inspector

该插件可以帮助我们查看当前 notebook 中所有的变量的名称,类型,大小和值。省去了 df.shape,type () 等语句的执行,也代替了前文提到的魔法函数 “% whos” 的执行,读者可以自行尝试一下。

8.4 Code folding

顾名思义,该插件可以对代码进行一定的折叠,例如遇到 class,def 等关键字,而且主体代码又很长时,折叠代码会方便阅读,这一点也让 jupyter notebook 更像一个 IDE。

8.5 Execute time

该插件可以显示每一个 cell 中代码的执行时间。

在这里插入图片描述

除此之外还有一些其他常见的插件扩展,例如 Notify,Collapsible headings 等,读者可以自行探索查看,并配置使用。

9 附加说明

**9.1 数学公式编辑:** 这个其实是 MarkDown 功能的延伸,需要将 cell 的代码类型改为 MarkDown,然后在一对美元符号之间写入 LaTex 公式,(例如 $E=mc^2$ ),运行 cell 之后就可以正常显示公式了。

9.2 关于 jupyter lab 和 jupyter hub

jupyter lab 是基于 jupyter notebook 的新版本,是包括了 Notebook 的下一代的有模块化的界面,可以在同一个窗口同时打开好几个 notebook 或文件(HTML, TXT, Markdown 等等),都以标签的形式展示,于是就更像是一个 IDE。除了界面上存在差异,使用方式上和 notebook 没有大的差别。

9.3 关于 jupyter notebook 与 pycharm 的差别

notebook 是更 “轻” 量级的,适合小白使用。各个 cell 之间具有相对独立,且变量共享的特点。另外,notebook 能够保存中间结果,方便演示,适合数据分析人员或者数据科学家使用。

JupyterLab——Jupyter Notebooks 的进化

  • JupyterLab 是 Jupyter Notebooks 的进化版。其支持更加灵活和更加强大的项目操作方式,但具有和 Jupyter Notebooks 一样的组件。JupyterLab 环境与 Jupyter Notebooks 环境完全一样,但具有生产力更高的体验。
  • JupyterLab 让你能在一个窗口中排布你的笔记本、终端、文本文件和输出结果工作区!你只需拖放你需要的单元即可。你也可以编辑 Markdown、CSV 和 JSON 等常用文件格式并实时预览修改所造成的影响。
× 请我吃糖~
打赏二维码