Jean's Blog

一个专注软件测试开发技术的个人博客

0%

安装并使用Jupyter Notebook

什么是Jupyter Notebook

Jupyter Notebook是基于网页的用于交互计算的应用程序。其可被应用于全过程计算:开发、文档编写、运行代码和展示结果。——Jupyter Notebook官方介绍

简而言之,Jupyter Notebook是以网页的形式打开,可以在网页页面中直接编写代码运行代码,代码的运行结果也会直接在代码块下显示的程序。如在编程过程中需要编写说明文档,可在同一个页面中直接编写,便于作及时的说明和解释。

组成部分

网页应用

网页应用即基于网页形式的、结合了编写说明文档、数学公式、交互计算和其他富媒体形式的工具。简言之,网页应用是可以实现各种功能的工具。

文档

即Jupyter Notebook中所有交互计算、编写说明文档、数学公式、图片以及其他富媒体形式的输入和输出,都是以文档的形式体现的。

这些文档是保存为后缀名为.ipynbJSON格式文件,不仅便于版本控制,也方便与他人共享。

此外,文档还可以导出为:HTML、LaTeX、PDF等格式。

主要特点

  1. 编程时具有语法高亮缩进tab补全的功能。
  2. 可直接通过浏览器运行代码,同时在代码块下方展示运行结果。
  3. 以富媒体格式展示计算结果。富媒体格式包括:HTML,LaTeX,PNG,SVG等。
  4. 对代码编写说明文档或语句时,支持Markdown语法。
  5. 支持使用LaTeX编写数学性说明。

安装Jupyter Notebook

使用pip命令安装

1
2
pip install --upgrade pip
pip install jupyter

在我们本机,使用Python会做很多的应用,如果与其他应该安装的依赖起冲突,因此我们需要进行环境隔离。进行环境隔离工具很多,这里推荐Anaconda,Anaconda 是一个免费的开发环境,能帮你管理众多的 Python 库,并支持 Jupyter Notebook、JupyterLab、Spyder 等工具。

Python + Anaconda + Jupyter Notebook 这三样东西加在一起,基本上就是机器学习工程师的标配。

image-20231116152928491

Anaconda如何安装呢?到官网找对应的下载包,安装即可。Anaconda的官方网址:https://www.anaconda.com/download

在Anaconda中已经自动为你安装了Jupter Notebook及其他工具,还有python中超过180个科学包及其依赖项。如果没有,输入命令安装即可conda install jupyter notebook

运行Jupyter Notebook

查看帮助文档

1
jupyter notebook --help

或者

1
jupyter notebook -h

启动

在终端输入以下命令,是默认启动

1
jupyter notebook

执行命令之后,在终端中将会显示一系列notebook的服务器信息,同时浏览器将会自动启动Jupyter Notebook。

启动过程中终端显示内容如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
...
[I 2023-11-16 15:41:22.232 ServerApp] http://127.0.0.1:8888/tree?token=67975f567fcce4ed2756ed8731b97a8effdac83ba8437789
[I 2023-11-16 15:41:22.232 ServerApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
[C 2023-11-16 15:41:22.234 ServerApp]

To access the server, open this file in a browser:
file:///Users/jeanlv/Library/Jupyter/runtime/jpserver-92657-open.html
Or copy and paste one of these URLs:
http://localhost:8888/tree?token=67975f567fcce4ed2756ed8731b97a8effdac83ba8437789
http://127.0.0.1:8888/tree?token=67975f567fcce4ed2756ed8731b97a8effdac83ba8437789
[I 2023-11-16 15:41:22.533 ServerApp] Skipped non-installed server(s): bash-language-server, dockerfile-language-server-nodejs, javascript-typescript-langserver, jedi-language-server, julia-language-server, pyright, python-language-server, python-lsp-server, r-languageserver, sql-language-server, texlab, typescript-language-server, unified-language-server, vscode-css-languageserver-bin, vscode-html-languageserver-bin, vscode-json-languageserver-bin, yaml-language-server
0.00s - Debugger warning: It seems that frozen modules are being used, which may
0.00s - make the debugger miss breakpoints. Please pass -Xfrozen_modules=off
0.00s - to python to disable frozen modules.
0.00s - Note: Debugging will proceed. Set PYDEVD_DISABLE_FILE_VALIDATION=1 to disable this validation.

默认启动的是8888端口,会自动打开你默认的浏览器进入jupyter notebook的主页面

注意:之后在Jupyter Notebook的所有操作,都请保持终端不要关闭,因为一旦关闭终端,就会断开与本地服务器的链接,你将无法在Jupyter Notebook中进行其他操作啦。

指定端口启动

1
jupyter notebook --port <port_number>

启动服务器但不打开浏览器

1
jupyter notebook --no-browser

只启动Jupyter Notebook的服务器

打开Jupyter Lab

1
jupyter lab --allow-root

使用

在指定的工程目录下启动Jupyter Notebook

  1. 创建一个notebook

    image-20231117143606119

    image-20231117143719517

    image-20231117143846054

  2. 编写代码画图

    image-20231117144134255

快捷键

快捷键 功能
M键 当前单元格变成Markdown单元格
Y键 当前单元格变成代码(Code)单元格
A键 在当前单元格上方插入单元格
B键 在当前单元格下方插入单元
X键 剪切选中的单元格
C键 复制选中的单元格
V键 将剪切或复制的单元格粘贴到当前单元格下方
Shift + ↑键 或 Shift + ↓键 向上或向下选择多个单元格
D D键 即在命令模式下连按两次D键,删除选中的单元格
Z键 恢复删除的单元格
Ctrl + Enter键 执行单元格中的代码
Shift + Enter键 执行当前单元格中的代码,并选中下一个单元格
Alt + Enter键 执行单元格中的代码,并在其下方插入一个新的单元格

Linux安装

安装步骤与上述一样,需要注意的启动方式

1
jupyter lab --ip='*' --port=8888 --notebook-dir='/home/jean/LearnRag' --no-browser --allow-root
  • --ip='*' 设置可访问的IP地址,*为所有
  • --port=8701设置服务端口为8701
  • --notebook-dir='/home/workspace' 设置工作目录路径为'/home/workspace'
  • --no-browser 不自动打开浏览器
  • --allow-root 允许root用户运行(若登陆的是root用户需要添加该命令)