目录

  • 项目名称:Jupyter notebook操作说明详解
  • 1 启动
  • 2 界面介绍
  • 3 常用菜单操作:
  • 4 命令模式和编辑模式
  • 5 快捷操作
  • 6 魔法函数
  • 7 Jupyter Notebook扩展
  • 8 jupyter notebook 修改主题、字体、字号
  • 9 附加说明


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

1 启动
# 开启jupyter notebook
jupyter notebook
# 开启jupyterlab
jupyter lab

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

2 界面介绍

机器学习的Jupyter怎么重启内核 jupyter notebook重启的功能_命令模式

快捷命令栏功能:保存文件,添加新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 命令模式和编辑模式

机器学习的Jupyter怎么重启内核 jupyter notebook重启的功能_命令模式_02

  • 每一个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 魔法函数

机器学习的Jupyter怎么重启内核 jupyter notebook重启的功能_深度学习_03

7 Jupyter Notebook扩展
pip install jupyter_contrib_nbextensions && jupyter contrib nbextension install

机器学习的Jupyter怎么重启内核 jupyter notebook重启的功能_机器学习_04

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

机器学习的Jupyter怎么重启内核 jupyter notebook重启的功能_机器学习的Jupyter怎么重启内核_05

8 jupyter notebook 修改主题、字体、字号
安装此工具:
pip install --upgrade jupyterthemes

查看可用主题:
jt -l

8.1 Table of Contents

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

机器学习的Jupyter怎么重启内核 jupyter notebook重启的功能_命令模式_06

8.2 Autopep8

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

机器学习的Jupyter怎么重启内核 jupyter notebook重启的功能_编辑器_07

8.3 Variable inspector

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

8.4 Code folding

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

8.5 Execute time

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

机器学习的Jupyter怎么重启内核 jupyter notebook重启的功能_机器学习的Jupyter怎么重启内核_08

除此之外还有一些其他常见的插件扩展,例如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 等常用文件格式并实时预览修改所造成的影响。