别找了!这里就是Jupyter Notebook最详指南:入门+安装+扩展

一、简介

Jupyter Notebook(此前被称为 IPython notebook)是一个交互式笔记本,支持运行 40 多种编程语言。

Jupyter Notebook是一个开源的Web应用程序,允许用户创建和共享包含代码、方程式、可视化和文本的文档,支持实时代码,数学方程,可视化和 markdown

1、具有以下用途:数据清理和转换、数值模拟、统计建模、数据可视化、机器学习等等。

2、具有以下优势:

  • 可选择语言:支持超过40种编程语言,包括Python、R、Julia、Scala等。

  • 分享笔记本:可以使用电子邮件、Dropbox、GitHub和Jupyter Notebook Viewer与他人共享。

  • 交互式输出:代码可以生成丰富的交互式输出,包括HTML、图像、视频、LaTeX等等。

  • 大数据整合:通过Python、R、Scala编程语言使用Apache Spark等大数据框架工具。支持使用pandas、scikit-learn、ggplot2、TensorFlow来探索同一份数据。

二、安装与运行

虽然Jupyter可以运行多种编程语言,但Python是安装Jupyter Noterbook的必备条件(Python2.7,或Python3.3以上)。

关于安装的全部信息可以在官网读到:安装Jupyter。有两种安装方式:

  • 使用Anaconda安装
  • 使用pip命令安装。

2.1使用Anaconda安装

对于小白,强烈建议使用Anaconda发行版安装Python和Jupyter,其中包括Python、Jupyter Notebook和其他常用的科学计算和数据科学软件包。

首先,下载Anaconda。建议下载Anaconda的最新Python 3版本。其次,请按照下载页面上的说明安装下载的Anaconda版本。最后,安装成功!

2.2使用pip命令安装

对于有经验的Python用户,可以使用Python的包管理器pip而不是Anaconda 来安装Jupyter 。 
如果已经安装了Python 3:

python3 -m pip install --upgrade pip
pi3 install jupyter

如果已经安装了Python 2:

python2 -m pip install --upgrade pip
pip2 install jupyter

恭喜,你已经成功安装好了!

注意:在这较推荐使用Anaconda,因为它自带了Numpy、Scipy、Matplotlib等多种python开发包和Jupyter Notebook!

2.3运行Jupyter Notebook

成功安装Jupyter Notebook后,在Terminal (Mac / Linux)或Command Prompt(Windows)中运行以下命令就可打开Jupyter Notebook。

jupyter notebook1

下面演示一下在Windows系统中打开Jupyter Notebook:

别找了!这里就是Jupyter Notebook最详指南:入门+安装+扩展_第1张图片

 输入 :jupyter notebook

别找了!这里就是Jupyter Notebook最详指南:入门+安装+扩展_第2张图片

别找了!这里就是Jupyter Notebook最详指南:入门+安装+扩展_第3张图片

执行上面命令之后, Jupyter Notebook 将在你的默认浏览器中打开,网址为:http://localhost:8888/tree

或者在开始菜单页面直接打开

别找了!这里就是Jupyter Notebook最详指南:入门+安装+扩展_第4张图片

 

三、主面板(Notebook Dashboard)

打开Notebook,可以看到主面板。在菜单栏中有Files(文件)、Running(运行)、Clusters(集群)三个选项。用到最多的是Files,我们可以在这里完成notebook的新建、重命名、复制等操作。

  • Files 基本上列出了所有的文件,
  • Running 显示你当前已经打开的终端和Notebooks,
  • Clusters 由 IPython parallel 包提供,用于并行计算。

具体功能如下:

别找了!这里就是Jupyter Notebook最详指南:入门+安装+扩展_第5张图片

 如果要打开一个新的 Jupyter Notebook,请单击页面右侧的“New”选项卡。在这里,你有四个选项可供选择:

  • ⦁ Python 3
  • ⦁ Text File (文本文件)
  • ⦁ Folder (文件夹)
  • ⦁ Terminal (终端)

1、Text File (文本文件)

        在 "Text File" 选项中,可得到一个空白的文档。输入你喜欢的任何字母,单词和数字。它基本上是一个文本编辑器(类似于 Ubuntu 上的应用程序),也可以选择一种语言(支持非常多的语言),然后用该语言来写一个脚本。还可以查找和替换文件中的单词。

2、Folder (文件夹)

       在 "Folder" 选项中, 顾名思义它的功能就是创建文件夹。阔以创建一个新文件夹来放入文件,重新命名或者删除它。

3、Terminal (终端)

       "Terminal" 的工作方式与你的 Mac 电脑或 Linux 电脑上的终端完全相同(或者 Windows 上的 cmd )。它在你的Web浏览器中支持终端会话。在这个终端中输入 python ,瞧!现在你已经可以开始写 python 脚本了。

在Running中,可以看到正在运行的notebook,我们可以选择结束正在运行的程序。

别找了!这里就是Jupyter Notebook最详指南:入门+安装+扩展_第6张图片

至于Clusters、Conda一般用不到,暂不做介绍。

---创建python文件 --

从“New”选项中选择 "Python 3" 选项。你会看到如下的截图:

别找了!这里就是Jupyter Notebook最详指南:入门+安装+扩展_第7张图片

代码上方的菜单栏提供了操作单元格的各种选项:

insert (添加),edit (编辑),cut (剪切),move cell up/down (上下移动单元格),run cells(在单元格中运行代码),interupt (停止代码),save (保存工作),以及 restart (重新启动内核)

别找了!这里就是Jupyter Notebook最详指南:入门+安装+扩展_第8张图片

在下拉菜单中(如上所示),你有四个选项:

  • Code - 代码。
  • Markdown - 文本。可以在运行代码后添加结论,添加注释等。
  • Raw NBConvert - 命令行工具。可将你的笔记本转换为另一种格式(如 HTML)
  • Heading - 标题。可以将标题添加到单独的小节并使你的 Notebook 看起来干净整洁。这个选项现在已经集成到 Markdown 选项中。添加一个“##”,以确保在你之后输入的内容将被视为标题。

四、编辑界面(Notebook Editor)

一个notebook的编辑界面主要由四部分组成:名称、菜单栏、工具条以及单元(Cell),如下图所示:

别找了!这里就是Jupyter Notebook最详指南:入门+安装+扩展_第9张图片

4.1 名称

在这里,我们可以修改notebook的名字,直接点击当前名称,弹出对话框进行修改: 
别找了!这里就是Jupyter Notebook最详指南:入门+安装+扩展_第10张图片

4.2菜单栏

菜单栏中有File、Edit、View、Insert、Cell、Kernel、Help等功能,下面逐一介绍。

4.2.1 File

File中的按钮选项如下图所示:

别找了!这里就是Jupyter Notebook最详指南:入门+安装+扩展_第11张图片

具体功能如下表:

选项 功能
New Notebook 新建一个notebook
Open… 在新的页面中打开主面板
Make a Copy… 复制当前notebook生成一个新的notebook
Rename… notebook重命名
Save and Checkpoint 将当前notebook状态存为一个Checkpoint
Revert to Checkpoint 恢复到此前存过的Checkpoint
Print Preview 打印预览
Download as 下载notebook存为某种类型的文件
Close and Halt 停止运行并退出该notebook

4.2.2 Edit

Edit中的按钮选项如下图所示:

别找了!这里就是Jupyter Notebook最详指南:入门+安装+扩展_第12张图片

具体功能如下表:

选项 功能
Cut Cells 剪切单元
Copy Cells 复制单元
Paste Cells Above 在当前单元上方粘贴上复制的单元
Paste Cells Below 在当前单元下方粘贴上复制的单元
Paste Cells & Replace 替换当前的单元为复制的单元
Delete Cells 删除单元
Undo Delete Cells 撤回删除操作
Split Cell 从鼠标位置处拆分当前单元为两个单元
Merge Cell Above 当前单元和上方单元合并
Merge Cell Below 当前单元和下方单元合并
Move Cell Up 将当前单元上移一层
Move Cell Down 将当前单元下移一层
Edit Notebook Metadata 编辑notebook的元数据
Find and Replace 查找替换,支持多种替换方式:区分大小写、使用JavaScript正则表达式、在选中单元或全部单元中替换

4.2.3 View

View中的按钮选项如下图所示:

别找了!这里就是Jupyter Notebook最详指南:入门+安装+扩展_第13张图片

具体功能如下表:

选项 功能
Toggle Header 隐藏/显示Jupyter notebook的logo和名称
Toggle Toolbar 隐藏/显示Jupyter notebook的工具条
Cell Toolbar 更改单元展示式样

View中的功能可以让用户更好的展示自己的notebook,但对编写代码、实现功能没有影响。

4.2.4 Insert

功能:在当前单元上方/下方插入新的单元。

4.2.5 Cell

别找了!这里就是Jupyter Notebook最详指南:入门+安装+扩展_第14张图片

选项 功能
Run Cells 运行单元内代码
Run Cells and Select Below 运行单元内代码并将光标移动到下一单元
Run Cells and Insert Below 运行单元内代码并在下方新建一单元
Run All 运行所有单元内的代码
Run All Above 运行该单元(不含)上方所有单元内的代码
Run All Below 运行该单元(含)下方所有单元内的代码
Cell Type 选择单元内容的性质
Current Outputs 对当前单元的输出结果进行隐藏/显示/滚动/清除
All Output 对所有单元的输出结果进行隐藏/显示/滚动/清除

4.2.6 Kernel

[图片上传中…(5.png-36664e-1514169774199-0)]

别找了!这里就是Jupyter Notebook最详指南:入门+安装+扩展_第15张图片

选项 功能
Interrupt 中断与内核连接(等同于ctrl-c)
Restart 重启内核
Restart & Clear Output 重启内核并清空现有输出结果
Restart & Run All 重启内核并重新运行notebook中的所有代码
Reconnect 重新连接到内核
Change kernel 切换内核

4.2.7 Help

别找了!这里就是Jupyter Notebook最详指南:入门+安装+扩展_第16张图片

选项 功能
User Interface Tour 用户使用指南,非常棒的功能,带你全面了解notebook
Keyboard Shortcuts 快捷键大全
Notebook Help notebook使用指南
Markdown Markdown使用指南
Python…pandas 各类使用指南
About 关于Jupyter Notebook的一些信息

4.3 工具条

工具条中的功能基本上在菜单中都可以实现,这里是为了能更快捷的操作,将一些常用按钮放了出来。下图是对各按钮的解释。

别找了!这里就是Jupyter Notebook最详指南:入门+安装+扩展_第17张图片

4.4 单元(Cell)

在单元中我们可以编辑文字、编写代码、绘制图片等等。对于单元的详细内容放在第五节中介绍。

五、单元(Cell)

5.1两种模式与快捷键

对于Notebook中的单元,有两种模式:

命令模式(Command Mode)与编辑模式(Edit Mode),在不同模式下我们可以进行不同的操作。

别找了!这里就是Jupyter Notebook最详指南:入门+安装+扩展_第18张图片

如上图,在编辑模式(Edit Mode)下,右上角出现一只铅笔的图标,单元左侧边框线呈现出绿色,点Esc键或运行单元格(ctrl-enter)切换回命令模式。

别找了!这里就是Jupyter Notebook最详指南:入门+安装+扩展_第19张图片

在命令模式(Command Mode)下,铅笔图标消失,单元左侧边框线呈现蓝色,按Enter键或者双击cell变为编辑状态。

5.1.1命令模式下的快捷键

别找了!这里就是Jupyter Notebook最详指南:入门+安装+扩展_第20张图片

5.1.2编辑模式下的快捷键

别找了!这里就是Jupyter Notebook最详指南:入门+安装+扩展_第21张图片

注意不要死记硬背,在使用过程中需要什么就去查,多用用就能记住了。

5.2 Cell的四种功能

Cell有四种功能:Code、Markdown、Raw NBConvert、Heading,这四种功能可以互相切换、可以使用快捷键或者工具条。

  • Code用于写代码;
  • Markdown用于文本编辑;
  • Raw NBConvert中的文字或代码等都不会被运行;
  • Heading是用于设置标题的,这个功能已经包含在Markdown中了。

Code用于写代码,三类提示符及含义如下:

提示符 含义
In[ ] 程序未运行
In[num] 程序运行后
In[*] 程序正在运行

Markdown用于编辑文本,给出常用的Markdown用法:

别找了!这里就是Jupyter Notebook最详指南:入门+安装+扩展_第22张图片

其他非常用的用法需要时可以再查阅。

5.3 快捷键

一旦进入命令模式(即没有活动单元格),就可以尝试以下快捷键:

A 键:将在选中单元格上方插入新单元格

B 键:将在选中单元格下方插入一个单元格 

D 键:连续按两次,删除单元格

F 键:弹出 “查找和替换” 菜单

Y 键:将当前的选中单元格变成代码单元格

Z 键:要撤消已删除的单元格

Shift + 向上或向下箭头键:可以选择多个单元格

Shift + M键: 多选模式时,合并选中的单元格

Ctrl + Home键: 转到单元格的开头

Ctrl + S键: 保存工作

Ctrl + Enter键: 将运行你的整个单元格

Ctrl + Shift + F键: 打开命令选项板

Enter 键:编辑模式时,进入编辑模式

Alt + Enter键: 不仅运行单元格,还在下方添加一个新的单元格

六、魔法函数

使用魔法函数可以简单的实现一些单纯python要很麻烦才能实现的功能。

  • %:行魔法函数,只对本行代码生效。 
  • %%:Cell魔法函数,在整个Cell中生效,必须放于Cell首行。 
  • %lsmagic:列出所有的魔法函数 。
  • %magic:查看各个魔法函数的说明。 
  • ?后面加上魔法函数名称,可以查看该函数的说明

一些常用魔法函数的示例:

魔法函数 作用
%%writefile 调用外部python脚本
%run 调用外部python脚本
%timeit 测试单行语句的执行时间
%%timeit 测试整个单元中代码的执行时间
% matplotlib inline 显示 matplotlib 包生成的图形
%%writefile 写入文件
%pdb 调试程序
%pwd 查看当前工作目录
%ls 查看目录文件列表
%reset 清除全部变量
%who 查看所有全局变量的名称,若给定类型参数,只返回该类型的变量列表
%whos 显示所有的全局变量名称、类型、值/信息
%xmode Plain 设置为当异常发生时只展示简单的异常信息
%xmode Verbose 设置为当异常发生时展示详细的异常信息
%debug bug调试,输入quit退出调试
%env 列出全部环境变量

注意这些命令是在Python kernel中适用的,其他 kernel 不一定适用。

七、其他

(1)按tab键查看提示信息或者补全命令

别找了!这里就是Jupyter Notebook最详指南:入门+安装+扩展_第23张图片

(2)在一个库、方法或变量前加上 ?,就可以获得它的一个快速语法说明

(3)使用分号可以阻止该行函数的结果输出

别找了!这里就是Jupyter Notebook最详指南:入门+安装+扩展_第24张图片

 

八、Jupyter Notebooks 扩展

8.1 Nbextensions简介

扩展可以有效提高你的 Jupyter Notebooks 的生产力。安装和使用扩展的最佳工具之一是 Nbextensions

8.2 Nbextensions的安装

它需要两个简单的步骤来安装(也有其他方法,但我发现这是最方便的):

第1步:用 pip 来安装它

pip install jupyter_contrib_nbextensions

第2步:安装关联的 JavaScript 和 CSS 文件

jupyter contrib nbextension install --user

完成此操作后,你会在 Jupyter Notebook 主页顶部看到一个 Nbextensions 选项卡,这里面有很多非常棒的扩展供你使用。

别找了!这里就是Jupyter Notebook最详指南:入门+安装+扩展_第25张图片

要启用一个扩展,只需点击它来激活。

8.3 最有用的8个扩展

  1. Code prettify:重新格式化和美化代码块的内容。
  2. Printview:添加了一个工具栏按钮来调用当前 Notebook 的 jupyter nbconvert,并可选择在新的浏览器标签中显示转换后的文件。
  3. Scratchpad:增加一个便捷单元格,它可以让你运行你的代码而不必修改你的 Notebook。
  4. Table of Contents (2):收集Notebook 中的所有标题,并将它们显示在一个浮动窗口中。
  5. A 2to3 converter:......

详细请点击链接观看我另一篇文章:

https://blog.csdn.net/weixin_44015669/article/details/104975271给!最详版的Jupyter NBextensions 插件介绍

九、保存、共享Notebook

这是 Jupyter Notebook 中最重要和最棒的功能之一。

当我需要写博客文章,但我的代码和注释都保存在 Jupyter 文件中时,我需要先将它们转换为另一种格式。请记住,这些 Notebooks 采用 json 格式,在共享它时这并不是很有帮助。我无法在电子邮件或博客上发布不同的单元格或代码块,对吧?

进入 Files 菜单,你会看到一个 Download As 选项:

别找了!这里就是Jupyter Notebook最详指南:入门+安装+扩展_第26张图片

你可以将你的 Notebook 保存为 7 个选项中的任何一个。

  • 最常用的是 .ipynb 文件,这样其他人就可以在自己的机器上复制代码,
  • 也可以保存为 .html 文件, 打开之后是一个网页。
  • 也可以使用 nbconvert :手动将你的 Notebook 转换为不同的格式,如 HTML 或 PDF。
  • 还可以使用 jupyterhub:则可以在服务器上托管 Notebooks 并与多个用户共享。许多顶尖的研究项目都使用这个功能用于协作。

十、最佳实践指南

虽然单独工作可能很有趣, 但大多数时候你会发现自己是在一个团队中工作。在这种情况下,遵循指导方针和最佳实践非常重要,这样可以确保你的代码和 Jupyter Notebooks 被正确标注,以便与你的团队成员保持一致。

下面列出在 Jupyter Notebooks 上一些最佳实践指南:

  1. 对于任何程序员来说最重要的事情之一:始终确保为代码添加合适的注释!确保你有代码所需的文档。
  2. 考虑一个命名方案,并坚持在所有代码中使用以确保一致性。这样其他人更容易读懂你的代码。
  3. 无论你需要什么库,在 Notebooks 开始时导入它们(并在它们旁边添加注释,说明导入它们的目的)。
  4. 确保代码中行与行之间有适当间隔,不要把循环和函数放在同一行中。
  5. 有时候你会发现你的文件变得非常繁重。看看有没有方法隐藏你认为对于以后参考不太重要的代码。
  6. Notebooks 看起来整洁干净, 让人赏心悦目也非常重要。
  7. Matplotlib 可以很漂亮整洁地展示你的 Notebook,看看怎么使用它!

地址:http://nbviewer.jupyter.org/github/jrjohansson/scientific-python-lectures/blob/master/Lecture-4-Matplotlib.ipynb

另一个提示!

  • 当你想创建演示文稿时,首先想到的工具是 PowerPoint 和 Google Slides。其实你的 Jupyter Notebooks 也可以创建幻灯片!还记得我说它超级灵活吗? 我一点都没有夸大。
  • 要将你的 Notebooks 转换为幻灯片,请转到  View -> Cell Toolbar,然后单击 Slideshow。看!现在,每个代码块都在右侧显示一个 Slide Type 的下拉选项。

它提供了以下 5 个选项:

别找了!这里就是Jupyter Notebook最详指南:入门+安装+扩展_第27张图片

好好试一试每一个选项以更好地理解它,它会改变你呈现你的代码的方式!

总结:以上是Jupyter Notebook最详指南,希望可以帮助到:也在变得更好自己而努力奋斗的你,喜欢可以收藏点赞留言哦,共勉!!

 

你可能感兴趣的:(Jupyter,Notebook,upyter,Notebook,jupyter,Notebook,Editor)