Jupyter Notebook 食用指南
延期开学的咸鱼在家无事可做,打算刷刷 MOOC 掉点头发,记笔记的时候发现 OneNote 没法记录代码,缩进高亮行号都没有,于是就想到了一直在电脑里躺尸的 Jupyter Notebook,记录下安装及食用的方法
安装 Jupyter Notebook
安装 Jupyter Notebook 之前需要先安装好 Python 或 Anaconda,可以使用 conda
(Anaconda) 和 pip
两种方式安装
Jupyter 官方推荐按使用 conda
(Anaconda) 来安装,安装 Anaconda 的时候一般会默认安装 Jupyter Notebook,但如果没有安装的话就使用下面的命令
1 | conda install jupyter notebook |
不用 Anaconda 的话就用 pip 安装,命令为
1 | pip install jupyter notebook |
关于 Anaconda 和 Python 的关系
这里顺带解释一波 Anaconda 和 Python 的关系,众所周知,Python 是一门编程语言(手动狗头),而 Anaconda 相当于 Python 的发行版,带有很多科学计算类的库以及包管理器 conda。可以用 Ubuntu 和 Linux 的关系来类比。
此外安装 Anaconda 后也要手动添加系统环境变量
1 | C:\ProgramData\Anaconda3\Scripts |
配置
安装 Java 扩展
我用的Java插件是 IJava,支持代码运行、自动联想、错误提示等功能,安装方式为
- 在 release 页面下载压缩包
- 解压缩并打开解压后的文件夹
- 在解压后的文件夹以管理员身份运行终端
- 输入
python install.py -h
- 输入
jupyter kernelspec list
检查是否安装成功,成功的话会返回java C:\ProgramData\jupyter\kernels\java
安装 Nbextensions
这是一个扩展的集合,有诸如设置自动保存的时间间隔、支持更多的 Latex 元素、设置代码字体大小等功能,我就不列举了,插件中的每个功能都带有详细的介绍。我主要用它来显示 Markdown 的目录。安装方式为
1 | conda install -c conda-forge jupyter_contrib_nbextensions |
安装完会在 Jupyter 的状态栏显示,如果没有的话使用这个命令
1 | jupyter contrib nbextension install --user --skip-running-check |
在里面勾选 Table of Contents(2)
就可以启用目录功能了
安装 nb_conda
nb_conda 主要用于多种运行环境的切换,安装命令为
1 | conda install nb_conda |
修改默认存储位置
Jupyter Notebook 默认的存储位置已经有很多文件了,非常杂乱,下面要做的就是换一个指定的文件夹存储笔记
- 首先需要创建 Jupyter 的配置文件
C:\Users\Sun\.jupyter\jupyter_notebook_config.py
,命令为1
jupyter notebook --generate-config
- 打开
C:\Users\Sun\.jupyter\jupyter_notebook_config.py
,搜索c.NotebookApp.notebook_dir
,删掉前面的#
,然后把指定文件夹的目录复制到单引号之间,修改完是这个亚子1
2## The directory to use for notebooks and kernels.
c.NotebookApp.notebook_dir = 'E:\Jupyter' - 保存文件并打开 Jupyter Notebook 查看是否成功
使用方法
启动
- 安装完成后在终端输入
jupyter notebook
就可以在浏览器中打开,默认地址为http://localhost:8888
- 使用
jupyter notebook --port port_number
可以指定端口(port_number)启动 - 使用
jupyter notebook notebook_name.ipynb
可以启动对应名称(notebook_name)的笔记 - 使用
jupyter notebook --no-browser
可以只启动服务而不启动浏览器
结束
结束的方法有两种
- 在浏览器页面点击 Quit
- 在终端中使用
ctrl + c
结束运行
主页操作
笔记操作
另外点击笔记标题(Untitled)那里可以重命名
Markdown 内部跳转
Jupyter Notebook 在 Markdown 模式下可以实现内部跳转,示例:
1 | [示例](#link) |
跳转提示语可以不加,不加的话跳转到的地方没有提示
命令
在 Python 内核下可以使用Shell命令,在命令前加 %
即可
1 | %pwd # 获取文件夹绝对路径 |
快捷键
Jupyter Notebook 有两种不同的键盘输入模式. 编辑模式可以将代码或文本输入到一个单元格中,并通过一个绿色的单元格来表示。命令模式将键盘与笔记本级命令绑定在一起,并通过一个灰色的单元格边界显示,该边框为蓝色的左边框。
编辑模式
命令模式
自定义快捷键
Jupyter Notebook 中原有的快捷键数量不是很多,但是预留了自定义快捷键的空间,在 Help - Edit Keyboard Shortcuts
中可以进行设置,在 add shortcut
中填入对应的按键然后点击右侧的 +
即可。这里注意
Ctrl、Shift、Alt
等要输入完整字母,不能直接识别- 两个按键中间用
-
来连接 - 设置完成记得点击右下角的确定
在这里我设置了两个快捷键
- clear cell output,清除单元格的输出结果,快捷键
Alt-Shif-D
- clear all cells output,清除当前笔记所有单元格的输出结果,快捷键
Alt-Ctrl-D
参考:
https://zhuanlan.zhihu.com/p/33105153
https://www.zhihu.com/question/380990243
https://blog.csdn.net/qq_34992030/article/details/89175633