Jupyter Notebook 是一种基于网络的交互式工具,它是机器学习和数据科学经常使用的工具。它可以被用于快速测试,作为报告工具,甚至作为复杂的学习材料在在线课程中使用。数据科学爱好者 Shadab Hussain 分享了 Jupyter Notebook 使用的一些小技巧。
所以在这个博客里,我要列出一些关于它的快捷方式,魔术命令和 nbextensions。
快捷方式
按 ctrl+shift+p 或单击菜单栏中的小键盘图标以获取命令调色板列表
在 command 和 edit 模式中都可以用的快捷方式:
Shift + Enter 运行当前选中的 cell
Ctrl+Enter 运行所选 cell
Alt+Enter 运行当前单元格,在下面插入
Ctrl+S 保存和检查
处于 edit 模式时的快捷方式:
按 Esc 键进入 command 模式
Tab 完成或缩进
Shift + Tab 选项卡工具提示
Ctrl+ ] 缩进
Ctrl+ [ 取消缩进
Ctrl + A 全选
Ctrl+Z 撤消
Ctrl + Shift + Z 或 Ctrl + Y 重做
Ctrl+Home 转到单元格的开始
Ctrl + End 转到单元格的结尾
Ctrl+Left 向左移动一个单词的距离
Ctrl + Right 向右移一个单词的距离
进入 command 模式后,按 H(help)获取键盘快捷键列表:
我列出了一些最常用的快捷方式。按 Esc 键确保您处于 command 模式:
使用上下键上下滚动 cell
按 A/B 在活动 cell 的上方 / 下方插入新的 cell
M 会将活动 cell 转换为 Markdown cell
Y 将活动 cell 设置为代码 cell
X 将剪切所选 cell
C 将复制所选择的 cell
V 将粘贴正在复制 / 剪切的 cell
Shift+V 粘贴上面的 cell
S 将保存 Notebook
F 查找 / 替换
O 切换输出
D+D(按下 D 两次)将删除活动 cell。
Z 撤消 cell 的删除。
要同时选择多个 cell,请按住 Shift 键,然后向上或向下按。
Shift + Space 向上滚动 notebook
Space 向下滚动 notebook
选定多个 cell 时:
按 Shift + M 合并所选内容
要在光标处拆分活动 cell,请在 edit 模式下按 Ctrl + Shift + -
你也可以单击并按住 Shift 键并在 cell 左侧的空白处单击以进行选择
不同 notebook 之间 cell 的复制和粘贴:
Notebook 1:- 按住 Shift 键选择多个 cell,然后按 Ctrl+c 进行复制
Notebook 2:- 按 Esc 键进入 command 模式,Ctrl + v 粘贴
使用「 ! pip install 」 在当前内核中安装 package!
在 shell 命令中使用 python 变量的方法是在前面加一个「$」符号:
魔术命令
魔术命令是大大扩展 notebook 功能的快捷方式。
下面共享一个 notebook 中的示例代码:
使用「%pastebin」魔术函数选择一个 cell 区域
Jupyter 给你一个秘密的 URL 来共享
若要查看已定义变量的列表,请使用 %whos 或 %who-ls
%whos 显示变量类型以及一些额外的信息,如大小、内容等。
%who_ls 只显示变量名
使用 Jupyter Notebook 中的外部文件:
%pycat file.py 在传呼机中打开脚本
%load file.py 将脚本插入 cell
%run file.py 运行脚本
%run file.ipynb 运行 notebook
%notebook filename 将当前 IPython 历史记录导出到 notebook 文件
获取、设置或列出环境变量:
%env 列出所有的环境变量
%env var 获取变量的值
%env var val 为变量设定一个值
在 shell 中运行命令:
%system 使用 shell(主要用于获取当前目录、日期等)
使用 %autosave 将 notebook 自动保存到 checkpoint:
每 120 秒(2 分钟)自动保存一次
执行不同的语言:
%%HTML 执行 HTML 代码
%%perl 在子进程中执行 Perl
%%javascript or %%js 执行 javascript 代码块
%%python3 在子进程中使用 python3 执行代码
%%ruby 执行 Ruby 代码
其他魔术命令:
%history 打印输入历史
%lsmagic 列出当前可用的 magic 函数
%magic 打印关于 magic 函数系统的信息
%matplotlib 设置 matplotlib 以交互工作
%pwd 返回当前工作目录
%quickref 显示快速参考表
%time python 语句或表达式的执行时间
Nbextensions
这个扩展的好处是它改变了默认值。
要安装 nbextensions,请在 anaconda 命令行中执行以下命令:
conda install -c conda-forge jupyter_contrib_nbextensions
conda install -c conda-forge jupyter_nbextensions_configurator
或者,你也可以使用 pip 安装 nbextensions:
pip show jupyter_contrib_nbextensions 运行 pip show
运行「pip show jupyter_contrib_nbextensions」来查找安装 notebook 扩展的位置
运行「jupyter contrib nbextensions install」安装新的扩展
安装完成后,重新启动 Jupyter notebook,你可以看到新的选项卡 Nbextensions 被添加到菜单上:
同样的 nbextension 也可以在「Edit」菜单中找到:
现在,让我们看看下面几个例子:
1.Hinterland——它使得代码单元中的每个按键都能自动完成菜单,而不是只能使用制表符做到这一点。
2.Split Cells Notebook——在 Jupyter notebook 中拆分 cell
进入 command 模式(Esc),使用 Shift + s 将当前 cell 切换为拆分 cell。
3.Table of Contents——允许收集所有正在运行的标题,并将其显示在浮动窗口中,作为侧边栏或带有导航的菜单。扩展也是可拖动、可调整大小、可折叠、可固定的,具有自动编号功能,具有独有的链接 ID 和可选的单元。
4.Autopep8——使用内核特定的代码重新格式化 / 美化代码单元的内容
5.Snippets——添加下拉菜单以将代码段所在的 cell 插入当前 notebook。
Jupyter Notebook 主题
我们可以从 Jupyter Notebook 的默认主题转换为黑暗模式。
为此,我们需要安装 jupyterthemes:
jt -l 将给出可用主题的列表
jt -t 将更改主题。让我们试着用 chesterish 主题把它改成黑暗模式。
jt-r 会将其恢复到默认主题