阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Ubuntu下Jupyter Notebook的安装与使用

173次阅读
没有评论

共计 6761 个字符,预计需要花费 17 分钟才能阅读完成。

最近由于项目需要,开始学习 Python,然后发现一个非常有用的 python 交互式编辑器,非常容易上手而且非常有用和实在,本博文是对学习 jupyter notebook 的一个汇总和记录,与大家一起分享!下面的内容是针对 Ubuntu 系统的,当然,jupyter notebook 在 Windows 也是支持的。

一、jupyter notebook 是什么

官网的介绍是:Jupyter Notebook 是一个 Web 应用程序,允许您创建和共享包含实时代码,方程,可视化和说明文本的文档。用途包括:数据清理和转换,数值模拟,统计建模,机器学习等等。

简单的介绍就是:Jupyter Notebook 是 Ipython 的升级版,而 Ipython 可以说是一个加强版的交互式 Shell,也就是说,它比在 terminal 里运行 python 会更方便,界面更友好,功能也更强大。怎么强大法,往下看就知道了。

二、jupyter notebook 的安装和打开

安装非常简单,只需要在终端输入:

pip install jupyter

打开 jupyter notebook 也只需要在终端输入:

jupyter notebook

运行上面的命令之后,你将看到类似下面这样的输出:

Ubuntu 下 Jupyter Notebook 的安装与使用

如上图,它打开了一个端口,并且会在你的浏览器中打开这个页面,主目录是图中的那个 directory(可能第一次打开没有这个目录)。

三、使用

1、打开一个新文档

在主页面的右上角点 new 即可新建一个你想要的文件类型。

Ubuntu 下 Jupyter Notebook 的安装与使用

如上图,jupyter 也可以打开一个 terminal,还可以作为一个 text 文本编辑器,功能明显是比 terminal 强大了。

下面的 Notebooks 类型除了 python 也是可以加入其他类型的文档的,具体方法百度一下就好。

2、python 编辑器介绍

点击 python2 后会出现一下界面:

Ubuntu 下 Jupyter Notebook 的安装与使用

稍微介绍一下 notebook 界面的组成部分 1)notebook 的名称 2)主工具栏提供了保存、导出、重载 notebook,以及重启内核等选项 3)快捷键 4)notebook 编辑区

最下面的哪个 In []: 的框叫做单元格,你可以把你的代码分成一段段的单元格输入,然后可以逐个单元格地运行。注意,这个功能是非常友好的,有时候只修改了中间的一小段代码,又不想全部代码都要重新运行的时候这个功能就非常有用了。另外,单元格是可以改变顺序的。而且可以输出图片和绘图!非常强大吧!

这些只要稍微尝试一下就懂的,下面主要介绍一些常用的技巧

** 注意,jupyter notebook 是支持 TAB 键自动补充单词的,再一次展示了其强大友好的一面!

A. 修改文档名称

方法一:点上图的 Untitled

方法二:点 File,再点 rename

B. 导出文档

步骤:点 File,再点 Download as

Ubuntu 下 Jupyter Notebook 的安装与使用

发现里面支持好几种格式的导出,第一个 ipynb 是 notebook 的格式,是一种类 json 的格式保存,其他的建议你们都试一试,你会感到非常惊喜的。

C. 保存

Ctrl + S 快捷键的可以保存你的文档的,默认是保存为 ipynb,保存在你的主目录下!

D. 单元格格式

注意到快捷键栏中有一个 code 的下拉框,点开发现有几个选项:

Ubuntu 下 Jupyter Notebook 的安装与使用

这里介绍一下

  • Code 格式就是正常的 python 代码格式
  • Markdown 的一个 text 文档编辑格式,就像在 word 里编写一样
  • Heading 就是给 Markdown 的句子设置标题等级,像 word 的标题一,标题二 …

Raw NBConvert 没用过不了解,可以自行百度或者看官网介绍

下面举例说明一下

选择一个空的单元格,code 下拉框选择 Heading,会出现一个不同类型的 cell:

Ubuntu 下 Jupyter Notebook 的安装与使用

改变单元格类型时弹出消息中有解释,后面那个单元格以 # 标记开头,意味着这是一个一级标题。如果需要子标题,可以使用以下标记表示:

# : 一级标题 ## : 二级标题 ### : 三级标题 …

输入内容后再运行一下(快捷栏里有),会出现类似下面的情况:

Ubuntu 下 Jupyter Notebook 的安装与使用

我一共输入了三级标题,点其中一个,你会发现它的 code 下拉栏显示是 markdown 类型

你以后代码里 print 的内容都是以 markdown 的格式显示的。

E. 快捷键

常用的快捷键是:

  • Ctrl + Enter: 执行单元格代码
  • Shift + Enter: 执行单元格代码并且移动到下一个单元格
  • Alt + Enter: 执行单元格代码,新建并移动到下一个单元格

这几个快捷键都是非常常用的。

F. 历史输入和输出变量

与标准 Shell 类似,IPython 中也可以通过 _ 和 _ _ 访问上一次和上上一次的输出。

当你写的单元格多了,肯定会注意到,IPython 中每一次的输入输出都有序号。你可以通过一下方法访问这些输入和输出:

  • _:访问上一次输出
  • __:访问上上一次输出
  • _X:访问历史 X 行输出
  • _iX:访问历史 X 行输入

其中小写字母“i”,代表“in”。

四、外部功能

上面讲的是 jupyter 的一些使用方法和技巧,其实它还有很多强大的外部功能的,下面给大家介绍一下。

A. 魔术命令

在 IPython 的会话环境中,所有文件都可以通过 %run 命令来当做脚本执行,并且文件中的变量也会随即导入当前命名空间。

即,对于一个模块文件,你对他使用 %run 命令的效果和 from module import * 相同

这种以 % 开头的命令在 IPython 中被称为魔术命令,用于加强 shell 的功能。

常用的魔术命令有:

%quickref 显示 IPython 快速参考
%magic 显示所有魔术命令的详细文档
%debug 从最新的异常跟踪的底部进入交互式调试器
%pdb 在异常发生后自动进入调试器
%reset 删除 interactive 命名空间中的全部变量
%run script.py 执行 script.py
%prun statement 通过 cProfile 执行对 statement 的逐行性能分析
%time statement 测试 statement 的执行时间
%timeit statement 多次测试 statement 的执行时间并计算平均值
%who、%who_ls、%whos 显示 interactive 命名空间中定义的变量,信息级别 / 冗余度可变
%xdel variable 删除 variable,并尝试清除其在 IPython 中的对象上的一切引用
!cmd 在系统 shell 执行 cmd
output=!cmd args 执行 cmd 并赋值
%bookmark 使用 IPython 的目录书签系统
%cd direcrory 切换工作目录
%pwd 返回当前工作目录(字符串形式)
%env 返回当前系统变量(以字典形式)

更多详情见请继续阅读下一页的精彩内容 :http://www.linuxidc.com/Linux/2017-03/142295p2.htm

对魔术命令不熟悉的话可以通过 %magic 查看详细文档;对某一个命令不熟悉的话,可以通过 %cmd? 内省机制查看特定文档

B. 添加插件

1)侧边栏目录导航

Ubuntu 下 Jupyter Notebook 的安装与使用

当文章内容非常长的时候,前后找内容,很麻烦,不如加一个 sidebar,方便导航方法:https://github.com/ipython-contrib/IPython-notebook-extensions/tree/master/nbextensions/usability/toc2

2)隐藏代码按钮

有时候,希望代码可以隐藏,这样子文档看起来,就会干净一些

Ubuntu 下 Jupyter Notebook 的安装与使用

点击按钮,就可以隐藏所有的代码,具体做法:http://stackoverflow.com/questions/27934885/how-to-hide-code-from-cells-in-ipython-notebook-visualized-with-nbviewer 当然,还有更多的 extention 可见 https://github.com/ipython-contrib/IPython-notebook-extensions/

C. 运行 Python 文件

利用 jupyter 的 cell 是可以运行 python 文件的。

方法一:

%run file.py

方法二:在 unitx command 前面加入一个感叹号“!”,如:

!python myfile.py

D. 导入外部代码

比如有一个 test.py 文件,需要将其载入到 jupyter 的一个 cell 中

在需要导入该段代码的 cell 中输入

%load test.py #test.py 是当前路径下的一个 python 文件

shift + enter 运行后,%load test.py 被自动加入了注释符号 #,test.py 中的所有代码都被 load 到了当前的 cell 中

或者从从网络 load 代码到 jupyter

在 cell 中输入 %load http://…..,然后运行该 cell,就会将 load 后面所对应地址的代码 load 到当前的 cell 中;

五、其他技巧

1)更改 Jupyter notebook 的工作空间(主目录)

Jupyter 的工作空间在其配置文件 ipython_notebook_config.py 中。

ipython_notebook_config.py 文件在~/.jupyter/ 下

如果找不到那就在终端输入:

jupyter notebook –generate-config

然后再

gedit ~/.jupyter/jupyter_notebook_config.py

Ctrl + F 找到下面这句按下面的格式,输入你想要的目录路径即可

# The directory to use for notebooks. 这决定了 jupyter 启动目录 

c.NotebookApp.notebook_dir = u’/path/to/your/notebooks’

2)自定义快捷键

这个就直接参考官方文档吧。

六、总结

总的来说,Jupyter notebook 是一款非常优秀的交互式编辑平台,提供了分享,演示,编辑等功能. 作为学习的记录者,方便你随时捡起学习的进度,增量式地前进。

希望这篇博文能对刚接触 jupyter 的朋友有所帮助!

本文永久更新链接地址 :http://www.linuxidc.com/Linux/2017-03/142295.htm

最近由于项目需要,开始学习 Python,然后发现一个非常有用的 python 交互式编辑器,非常容易上手而且非常有用和实在,本博文是对学习 jupyter notebook 的一个汇总和记录,与大家一起分享!下面的内容是针对 Ubuntu 系统的,当然,jupyter notebook 在 Windows 也是支持的。

一、jupyter notebook 是什么

官网的介绍是:Jupyter Notebook 是一个 Web 应用程序,允许您创建和共享包含实时代码,方程,可视化和说明文本的文档。用途包括:数据清理和转换,数值模拟,统计建模,机器学习等等。

简单的介绍就是:Jupyter Notebook 是 Ipython 的升级版,而 Ipython 可以说是一个加强版的交互式 Shell,也就是说,它比在 terminal 里运行 python 会更方便,界面更友好,功能也更强大。怎么强大法,往下看就知道了。

二、jupyter notebook 的安装和打开

安装非常简单,只需要在终端输入:

pip install jupyter

打开 jupyter notebook 也只需要在终端输入:

jupyter notebook

运行上面的命令之后,你将看到类似下面这样的输出:

Ubuntu 下 Jupyter Notebook 的安装与使用

如上图,它打开了一个端口,并且会在你的浏览器中打开这个页面,主目录是图中的那个 directory(可能第一次打开没有这个目录)。

三、使用

1、打开一个新文档

在主页面的右上角点 new 即可新建一个你想要的文件类型。

Ubuntu 下 Jupyter Notebook 的安装与使用

如上图,jupyter 也可以打开一个 terminal,还可以作为一个 text 文本编辑器,功能明显是比 terminal 强大了。

下面的 Notebooks 类型除了 python 也是可以加入其他类型的文档的,具体方法百度一下就好。

2、python 编辑器介绍

点击 python2 后会出现一下界面:

Ubuntu 下 Jupyter Notebook 的安装与使用

稍微介绍一下 notebook 界面的组成部分 1)notebook 的名称 2)主工具栏提供了保存、导出、重载 notebook,以及重启内核等选项 3)快捷键 4)notebook 编辑区

最下面的哪个 In []: 的框叫做单元格,你可以把你的代码分成一段段的单元格输入,然后可以逐个单元格地运行。注意,这个功能是非常友好的,有时候只修改了中间的一小段代码,又不想全部代码都要重新运行的时候这个功能就非常有用了。另外,单元格是可以改变顺序的。而且可以输出图片和绘图!非常强大吧!

这些只要稍微尝试一下就懂的,下面主要介绍一些常用的技巧

** 注意,jupyter notebook 是支持 TAB 键自动补充单词的,再一次展示了其强大友好的一面!

A. 修改文档名称

方法一:点上图的 Untitled

方法二:点 File,再点 rename

B. 导出文档

步骤:点 File,再点 Download as

Ubuntu 下 Jupyter Notebook 的安装与使用

发现里面支持好几种格式的导出,第一个 ipynb 是 notebook 的格式,是一种类 json 的格式保存,其他的建议你们都试一试,你会感到非常惊喜的。

C. 保存

Ctrl + S 快捷键的可以保存你的文档的,默认是保存为 ipynb,保存在你的主目录下!

D. 单元格格式

注意到快捷键栏中有一个 code 的下拉框,点开发现有几个选项:

Ubuntu 下 Jupyter Notebook 的安装与使用

这里介绍一下

  • Code 格式就是正常的 python 代码格式
  • Markdown 的一个 text 文档编辑格式,就像在 word 里编写一样
  • Heading 就是给 Markdown 的句子设置标题等级,像 word 的标题一,标题二 …

Raw NBConvert 没用过不了解,可以自行百度或者看官网介绍

下面举例说明一下

选择一个空的单元格,code 下拉框选择 Heading,会出现一个不同类型的 cell:

Ubuntu 下 Jupyter Notebook 的安装与使用

改变单元格类型时弹出消息中有解释,后面那个单元格以 # 标记开头,意味着这是一个一级标题。如果需要子标题,可以使用以下标记表示:

# : 一级标题 ## : 二级标题 ### : 三级标题 …

输入内容后再运行一下(快捷栏里有),会出现类似下面的情况:

Ubuntu 下 Jupyter Notebook 的安装与使用

我一共输入了三级标题,点其中一个,你会发现它的 code 下拉栏显示是 markdown 类型

你以后代码里 print 的内容都是以 markdown 的格式显示的。

E. 快捷键

常用的快捷键是:

  • Ctrl + Enter: 执行单元格代码
  • Shift + Enter: 执行单元格代码并且移动到下一个单元格
  • Alt + Enter: 执行单元格代码,新建并移动到下一个单元格

这几个快捷键都是非常常用的。

F. 历史输入和输出变量

与标准 Shell 类似,IPython 中也可以通过 _ 和 _ _ 访问上一次和上上一次的输出。

当你写的单元格多了,肯定会注意到,IPython 中每一次的输入输出都有序号。你可以通过一下方法访问这些输入和输出:

  • _:访问上一次输出
  • __:访问上上一次输出
  • _X:访问历史 X 行输出
  • _iX:访问历史 X 行输入

其中小写字母“i”,代表“in”。

四、外部功能

上面讲的是 jupyter 的一些使用方法和技巧,其实它还有很多强大的外部功能的,下面给大家介绍一下。

A. 魔术命令

在 IPython 的会话环境中,所有文件都可以通过 %run 命令来当做脚本执行,并且文件中的变量也会随即导入当前命名空间。

即,对于一个模块文件,你对他使用 %run 命令的效果和 from module import * 相同

这种以 % 开头的命令在 IPython 中被称为魔术命令,用于加强 shell 的功能。

常用的魔术命令有:

%quickref 显示 IPython 快速参考
%magic 显示所有魔术命令的详细文档
%debug 从最新的异常跟踪的底部进入交互式调试器
%pdb 在异常发生后自动进入调试器
%reset 删除 interactive 命名空间中的全部变量
%run script.py 执行 script.py
%prun statement 通过 cProfile 执行对 statement 的逐行性能分析
%time statement 测试 statement 的执行时间
%timeit statement 多次测试 statement 的执行时间并计算平均值
%who、%who_ls、%whos 显示 interactive 命名空间中定义的变量,信息级别 / 冗余度可变
%xdel variable 删除 variable,并尝试清除其在 IPython 中的对象上的一切引用
!cmd 在系统 shell 执行 cmd
output=!cmd args 执行 cmd 并赋值
%bookmark 使用 IPython 的目录书签系统
%cd direcrory 切换工作目录
%pwd 返回当前工作目录(字符串形式)
%env 返回当前系统变量(以字典形式)

更多详情见请继续阅读下一页的精彩内容 :http://www.linuxidc.com/Linux/2017-03/142295p2.htm

正文完
星哥说事-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-21发表,共计6761字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中