Jupyter notebook 是一种 Web 应用,它能让用户将说明文本、数学方程、代码和可视化内容全部组合到一个易于共享的文档中,非常方便研究和教学。在原始的 Python shell 与 IPython 中,可视化在单独的窗口中进行,而文字资料以及各种函数和类脚本包含在独立的文档中。
1 安装
通过安装Anaconda来解决Jupyter Notebook的安装问题,因为Anaconda已经自动为你安装了Jupter Notebook及其他工具,还有python中超过180个科学包及其依赖项。
2 修改默认工作目录
在cmd中输入 jupyter notebook --generate-config
如果该配置文件已经存在,那么,会出现如下信息,从中可以见到配置文件存在的位置,注意,此时,输入N,不要overwrite
在用户目录下可以看到jupyter_notebook_config.py文件
找到c.NotebookApp.notebook_dir = ''
修改为需要的目录即可,如:c.NotebookApp.notebook_dir = 'D:\workspace\jupyter_notebook'
有个问题,从命令行输入jupyter notebook
的时候发现目录已经更改了,但是点击桌面的jupyter图标打开的目录依然没有修改,这是找到桌面图标所在位置点击【属性】,找到下图位置,删掉%USERPROFILE%
,保存即可。
3 常用快捷键
命令模式快捷键(按 Esc 键开启):
快捷键 | 作用 | 说明 |
---|---|---|
Enter | 转入编辑模式 | |
Shift-Enter | 运行本单元,选中下个单元 | 新单元默认为命令模式 |
Ctrl-Enter | 运行本单元 | |
Alt-Enter | 运行本单元,在其下插入新单元 | 新单元默认为编辑模式 |
Y | 单元转入代码状态 | |
M | 单元转入 markdown 状态 | |
R | 单元转入 raw 状态 | |
1 | 设定 1 级标题 | 仅在 markdown 状态下时建议使用标题相关快捷键,如果单元处于其他状态,则会强制切换到 markdown 状态 |
2 | 设定 2 级标题 | |
3 | 设定 3 级标题 | |
4 | 设定 4 级标题 | |
5 | 设定 5 级标题 | |
6 | 设定 6 级标题 | |
Up | 选中上方单元 | |
K | 选中上方单元 | |
Down | 选中下方单元 | |
J | 选中下方单元 | |
Shift-K | 连续选择上方单元 | |
Shift-J | 连续选择下方单元 | |
A | 在上方插入新单元 | |
B | 在下方插入新单元 | |
X | 剪切选中的单元 | |
C | 复制选中的单元 | |
Shift-V | 粘贴到上方单元 | |
V | 粘贴到下方单元 | |
Z | 恢复删除的最后一个单元 | |
D,D | 删除选中的单元 | 连续按两个 D 键 |
Shift-M | 合并选中的单元 | |
Ctrl-S | 保存当前 NoteBook | |
S | 保存当前 NoteBook | |
L | 开关行号 | 编辑框的行号是可以开启和关闭的 |
O | 转换输出 | |
Shift-O | 转换输出滚动 | |
Esc | 关闭页面 | |
Q | 关闭页面 | |
H | 显示快捷键帮助 | |
I,I | 中断 NoteBook 内核 | |
0,0 | 重启 NoteBook 内核 | |
Shift | 忽略 | |
Shift-Space | 向上滚动 | |
Space | 向下滚动 |
编辑模式快捷键( 按 Enter 键启动):
快捷键 | 作用 | 说明 |
---|---|---|
Tab | 代码补全或缩进 | |
Shift-Tab | 提示 | 输出帮助信息,部分函数、类、方法等会显示其定义原型,如果在其后加 ? 再运行会显示更加详细的帮助 |
Ctrl-] | 缩进 | 向右缩进 |
Ctrl-[ | 解除缩进 | 向左缩进 |
Ctrl-A | 全选 | |
Ctrl-Z | 撤销 | |
Ctrl-Shift-Z | 重做 | |
Ctrl-Y | 重做 | |
Ctrl-Home | 跳到单元开头 | |
Ctrl-Up | 跳到单元开头 | |
Ctrl-End | 跳到单元末尾 | |
Ctrl-Down | 跳到单元末尾 | |
Ctrl-Left | 跳到左边一个字首 | |
Ctrl-Right | 跳到右边一个字首 | |
Ctrl-Backspace | 删除前面一个字 | |
Ctrl-Delete | 删除后面一个字 | |
Esc | 切换到命令模式 | |
Ctrl-M | 切换到命令模式 | |
Shift-Enter | 运行本单元,选中下一单元 | 新单元默认为命令模式 |
Ctrl-Enter | 运行本单元 | |
Alt-Enter | 运行本单元,在下面插入一单元 | 新单元默认为编辑模式 |
Ctrl-Shift-- | 分割单元 | 按光标所在行进行分割 |
Ctrl-Shift-Subtract | 分割单元 | |
Ctrl-S | 保存当前 NoteBook | |
Shift | 忽略 | |
Up | 光标上移或转入上一单元 | |
Down | 光标下移或转入下一单元 | |
Ctrl-/ | 注释整行/撤销注释 | 仅代码状态有效 |
注: 如果快捷键被系统中的其它应用占用,则可能会失效
命令模式Command Mode
按键 | 功能 | 按键 | 功能 |
---|---|---|---|
Enter |
进入当前块的编辑模式 | X |
剪切选中的代码块 |
Shift +Enter
|
运行当前块并选中下一块 | C |
复制选中的代码块 |
Ctrl +Enter
|
运行当前块 |
Shift +V
|
在当前块上方粘贴 |
Alt +Enter
|
运行当前块并在下方插入新块 | V |
在当前块下方粘贴 |
Y |
切换到代码状态 | Z |
撤销删除操作 |
M |
切换到MarkDown状态 |
D ,D
|
删除选中的代码块 |
R |
切换到Raw NBConvert |
Shift +M
|
将当前块与下一块合并 |
数字键1 到6
|
将当前块第一行变为MarkDown的n级标题 |
S / Ctrl +S
|
保存并设置检查点 |
↑ / K
|
选择上一个代码块 | L |
显示/隐藏当前块的代码行号 |
↓ / J
|
选择下一个代码块 | O |
显示/隐藏当前块的输出内容 |
A |
在当前块上方插入新代码块 |
Shift +O
|
显示/隐藏当前块的输出内容的滚动条 |
B |
在当前块下方插入新代码块 |
Esc / Q
|
关闭弹窗 |
H |
展示快捷键帮助 |
I ,I
|
打断kernal运行 |
Space |
滚动向下 |
O ,O
|
重启kernal |
Shift +Space
|
滚动向上 |
Shift +(↑ /↓ ) |
选中多个代码块 |
编辑模式Edit Mode
按键 | 功能 | 按键 | 功能 |
---|---|---|---|
Tab |
代码补全/缩进 |
Ctrl +→
|
光标右移一个词 |
Shift +Tab
|
工具提示/反缩进 |
Ctrl +Backspace
|
删除前一个词 |
Ctrl +[
|
缩进 |
Ctrl +Delete
|
删除后一个词 |
Ctrl +]
|
反缩进 |
Ctrl +M / Esc
|
进入命令模式 |
Ctrl +A
|
全选 |
Ctrl +Shift +P
|
打开命令选择板 |
Ctrl +Z
|
撤销 |
Shift +Enter
|
运行当前块并选中下一块 |
Ctrl +Y / Ctrl +Shift +Z
|
重复 |
Ctrl +Enter
|
运行当前块 |
Ctrl +Home
|
移动光标到块首 |
Alt +Enter
|
运行当前块并在下方插入新块 |
Ctrl +End
|
移动光标到块尾 |
Ctrl +Shift +-
|
按光标位置分割当前块 |
Ctrl +←
|
光标左移一个词 |
Ctrl +S
|
保存并设置检查点 |
4 修改jupyter notebook的主题
主题地址:https://github.com/dunovank/jupyter-themes
4.1 安装jupter notebook的自定义主题
pip install jupyterthemes
pip install --upgrade jupyterthemes # 可以不用升级
【问题1】版本太低
notebook 5.7.4 has requirement jupyter-core>=4.4.0, but you'll have jupyter-core 4.3.0 which is incompatible.
Installing collected packages: notebook, jupyterthemes
Found existing installation: notebook 5.0.0
Cannot uninstall 'notebook'. It is a distutils installed project and thus we cannot accurately determine which files belong to it which would lead to only a partial uninstall.
【解决1】更新一下,即可
pip install --upgrade jupyter-core
【问题2】
Cannot uninstall 'notebook'. It is a distutils installed project and thus we cannot accurately determine which files belong to it which would lead to only a partial uninstall.
【解决2】
pip install jupyterthemes --ignore-installed notebook
【问题3】prompt_toolkit版本太高
jupyter-console 5.2.0 has requirement prompt_toolkit<2.0.0,>=1.0.0, but you'll have prompt-toolkit 2.0.7 which is incompatible.
【解决3】先查看当前prompt_toolkit的版本,删掉再重新安装
pip show prompt_toolkit
pip uninstall prompt_toolkit
pip install prompt_toolkit==1.0.15
4.2 相关命令
查看主题:
>jt -l
Available Themes:
chesterish
grade3
gruvboxd
gruvboxl
monokai
oceans16
onedork
solarizedd
solarizedl
修改主题:
jt -t oceans16 -T -N -fs 12 -tfs 12
恢复原来的配置
jt -r