看视频的时候发现一个很是有用的python交互式编辑器,很是容易上手并且很是有用和实在,本博文是对学习jupyter notebook的一个汇总和记录,与你们一块儿分享!下面的内容是针对ubuntu 系统的,固然,jupyter notebook在windows也是支持的。html
官网的介绍是:Jupyter Notebook是一个Web应用程序,容许您建立和共享包含实时代码,方程,可视化和说明文本的文档。 用途包括:数据清理和转换,数值模拟,统计建模,机器学习等等。python
简单的介绍就是:Jupyter Notebook是Ipython的升级版,而Ipython能够说是一个增强版的交互式 Shell,也就是说,它比在terminal里运行python会更方便,界面更友好,功能也更强大。怎么强大法,往下看就知道了。git
安装很是简单,只须要在终端输入:github
pip install jupyter #针对Python2shell
pip3 install jupyter #针对Python3json
打开jupyter notebook 也只须要在终端输入:ubuntu
jupyter notebook windows
一、其实这两个命令效果是同样的,没有区别:浏览器
(1)好比安装库numpy,pip3 install numpy或者pip install numpy:只是当一台电脑同时有多个版本的Python的时候,用pip3就能够自动区分用Python3来安装库。是为了不和Python2发生冲突的。markdown
(2)若是你的电脑只安装了Python3,那么无论用pip仍是pip3都同样的。
二、安装了python3以后,会有pip3
(1)使用pip install XXX :
新安装的库会放在这个目录下面:python2.7/site-packages;
(2)使用pip3 install XXX :
新安装的库会放在这个目录下面:python3.6/site-packages;
(3)若是使用python3执行程序,那么就不能import python2.7/site-packages中的库。
运行上面的命令以后,你将看到相似下面这样的输出:
如上图,它打开了一个端口,而且会在你的浏览器中打开这个页面,主目录是图中的那个directory(可能第一次打开没有这个目录)。
在主页面的右上角点new便可新建一个你想要的文件类型。
如上图,jupyter也能够打开一个terminal,还能够做为一个text文本编辑器,功能明显是比terminal强大了。
下面的Notebooks类型除了python 也是能够加入其余类型的文档的,具体方法百度一下就好。
点击python3后会出现一下界面:
稍微介绍一下notebook 界面的组成部分1)notebook 的名称2)主工具栏提供了保存、导出、重载 notebook,以及重启内核等选项3)快捷键4)notebook 编辑区
最下面的哪一个 In [ ]: 的框叫作单元格,你能够把你的代码分红一段段的单元格输入,而后能够逐个单元格地运行。注意,这个功能是很是友好的,有时候只修改了中间的一小段代码,又不想所有代码都要从新运行的时候这个功能就很是有用了。另外,单元格是能够改变顺序的。并且能够输出图片和绘图!很是强大吧!
这些只要稍微尝试一下就懂的,下面主要介绍一些经常使用的技巧
**注意,jupyter notebook 是支持 TAB 键自动补充单词的,再一次展现了其强大友好的一面!
方法一:点上图的Untitled
方法二:点File,再点rename
步骤:点File,再点Download as
发现里面支持好几种格式的导出,第一个ipynb是notebook的格式,是一种类json的格式保存,其余的建议大家都试一试,你会感到很是惊喜的。
Ctrl + S 快捷键的能够保存你的文档的,默认是保存为ipynb,保存在你的主目录下!
注意到快捷键栏中有一个code的下拉框,点开发现有几个选项:
这里介绍一下
下面举例说明一下
选择一个空的单元格,code下拉框选择Heading,会出现一个不一样类型的 cell:
改变单元格类型时弹出消息中有解释,后面那个单元格以 # 标记开头,意味着这是一个一级标题。若是须要子标题,可使用如下标记表示:
# : 一级标题## : 二级标题### : 三级标题...
输入内容后再运行一下(快捷栏里有),会出现相似下面的状况:
我一共输入了三级标题,点其中一个,你会发现它的code下拉栏显示是markdown类型
你之后代码里print 的内容都是以markdown的格式显示的。
经常使用的快捷键是:
这几个快捷键都是很是经常使用的。
与标准 Shell 相似,IPython 中也能够经过 _ 和 _ _ 访问上一次和上上一次的输出。
当你写的单元格多了,确定会注意到,IPython 中每一次的输入输出都有序号。你能够经过一下方法访问这些输入和输出:
其中小写字母 “i”,表明 “in”。
上面讲的是jupyter 的一些使用方法和技巧,其实它还有不少强大的外部功能的,下面给你们介绍一下。
在 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 | 返回当前系统变量(以字典形式) |
对魔术命令不熟悉的话能够经过 %magic 查看详细文档;对某一个命令不熟悉的话,能够经过 %cmd? 内省机制查看特定文档
当文章内容很是长的时候,先后找内容,很麻烦,不如加一个sidebar,方便导航方法:https://github.com/ipython-contrib/IPython-notebook-extensions/tree/master/nbextensions/usability/toc2
有时候,但愿代码能够隐藏,这样子文档看起来,就会干净一些
点击按钮,就能够隐藏全部的代码,具体作法: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/
参考【https://www.douban.com/review/7890354/】
利用jupyter的cell是能够运行python文件的。
方法一:
%run file.py
方法二:在unitx command前面加入一个感叹号“!” ,如:
!python myfile.py
好比有一个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中;
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'
这个就直接参考官方文档吧:http://nbviewer.jupyter.org/github/ipython/ipython/blob/3.x/examples/Notebook/Custom%20Keyboard%20Shortcuts.ipynb
总的来讲,Jupyter notebook 是一款很是优秀的交互式编辑平台,提供了分享,演示,编辑等功能.做为学习的记录者,方便你随时捡起学习的进度,增量式地前进。
但愿这篇博文能对刚接触jupyter 的朋友有所帮助!
【1】官网安装:https://jupyter.readthedocs.io/en/latest/install.html
【2】jupyter使用小结
【3】Jupyter Notebook 快速入门(上)
【4】jupyter notebook 各类用法记录(陆续更新)
参考下面文章修改,下面文章为Python2的
[5】https://blog.csdn.net/gubenpeiyuan/article/details/79252402