Jupyter Notebook

由于python2在2020年将停止支持,这就意味着为了开发使用方便,必将转到python3。所以无论是安装python还是安装封装包anaconda,都建议选择3.0以上的版本。可能开始会有些不太方便,但是计算机和电子产品,版本越新的越好用,速度更快,这点是毋庸置疑的。

今天想介绍的是对做python开发,尤其是涉及到课堂教学的开发人员,特别推荐的一款神器,用了这个神器,能让你事半功倍。这个神器就是python下的Notebook。以前在python2时,这个神器一般成为ipython notebook,但是现在称为Jupyter Notebook。

插曲:我还专门去查了一下这个词的来源,原来Jupyter这个名字是它要服务的三种语言的缩写:Julia,PYThon和R,而发音一般与Jupiter这个词相似,索性我就叫它”丘比特”好了,反正我的英语发音也是具有强烈地方特色的……

言归正传,这个神器是一种交互式计算环境,官方是这么介绍的:

It is an interactive computational environment, in which you can combine code execution, rich text, mathematics, plots and rich media.

各位看官,看到了吧,可以执行代码,丰富的文本,丰富的数学函数,可以画图和多媒体播放。请问一下各位看官,哪一个IDE具有这种强大又方便的功能?我们平时用的开发环境,要么是很庞大,你开始编程前,要先把这个IDE学会了。要么是很黑暗,你开始编程前,要先习惯,黑乎乎啥也看不到,完全凭着自己强大的逻辑思维和记忆能力,通过键盘一个字母一个字母敲进去,然后编译和调试代码。

Jupyter Notebook让你既能编程,又能方便调试,还能可视化,还能把代码给你检查一下语法啊,补齐啊等。这简直就是我等懒人(编程手法很烂的人)的福音啊。

你不确定好不好用?

没关系,到官方去看一下,免费试用,其实安装也是免费的,而且是开源的。人家是提供了一个在线使用的版本,你要是不确定是不是要在本地机器上安装,可以先在官网试用一下。点进去使Try it in your browser,然后就进入了下面的界面,

 

等等,刚才不是说python吗?这下面怎么还能用julia,R,C++等编程,考虑的真是周全啊……也就是说如果你喜欢用python之外的语言进行数据处理,of course 可以。

我还是建议你,如果你已经在用python了,并且经常做数据处理啊,可视化处理啊,等等一些交互式很强的开发,那直接把Jupyter Notebook安装上吧。

具体安装方式,如果你不想配置复杂的python环境,那么建议选在Anaconda包进行安装,到Anaconda官方网站下载一个与你计算机相匹配的版本,然后直接安装就可以了,具体安装方式如果不懂,可以借助于google或者bing,这个时候baidu或许也能帮个忙。

安装完anaconda后,默认是带有Jupyter Notebook包的。如果没有,使用anaconda的工具安装一下。具体命令如下

conda install ipython jupyter

 

而后,在conda下使用方式和python启动一样。也就是直接在你的终端输入ipython notebook 或者jupyter notebook,都可以,而后默认网页浏览器会打开,并显示一个可编程的交互界面。如下图所示:

在这里,你就可以像别的地方写python代码一样,进行python程序开发了。

而如果你是python包一个一个安装的,那么可以使用pip进行安装。我的电脑是python3,那么安装命令如下:

 pip3 install Jupyter Notebook 

 

由于我是在cmder下使用的,在cmder输入ipython notebook和jupyter notebook都可以进入notebook界面。但是ipython由于已经丢弃,因此会提示让你用jupyter的方式进入交互界面,界面上显示的token,类似于密码,远程登录是需要输入这个密码的,具体可以另外开一个帖子介绍。

 

此时,默认浏览器就打开,浏览器打开默认路径是当前路径,如上图,我是在python-code路径上打开的,那么浏览器此时打开后,显示的也是该路径下的文件,

 此时就可以通过新建,建立程序文件。

Python3是新建python开发环境文件。

如下图所示,

 

文件名此时未命名,可以单击进行命名。这个界面,如果熟悉ipython,应该对这个界面不陌生。

至此,notebook可以使用了。

这些并不是jupyter notebook的强大之处,强大之处在于,其兼容了ipython的很多功能,又具有新的功能。

下面一一介绍强大的功能。

  1. 自动补全功能。从上面我录制的小视频可以看到,可以自动补全关键词,对于懒人来说,真是福音。
  2. 从上面可以看到,好像一个一个小的对话框一样。这是notebook的cell,中文叫“单元格”,你可以通过”插入”菜单,选择在上面还是下面插入cell.这样做的好处当然是程序debug时相当方便,我可以一个模块一个模块的写,然后调试,最后再将整个程序整合。其中在前面执行的cells,其import以及定义的函数对后面执行的cells是可见的,有效的。因此,一般情况将import写在最开始的一个cell中,便于后面程序的调试和代码的整洁。从“单元格”菜单可以看到,单元格的运行可以分开执行,也可以选择顺序或者所有的都执行,或者只运行某个单元格之前的单元格,真是方便极了。

 

  1. 如果代码太多,cells太长,可以选择折叠cells。这点是不是特别类似于IDE分成好多个文件,但是要方便很多。
  2. 可以通过“编辑”菜单进行代码的分割或者粘贴复制等操作。
  3. 可以通过“查看”菜单进行幻灯片等的播放。
  4. 强大的help功能。如图

 

posted @ 2019-02-18 18:01  caoeryingzi  阅读(1017)  评论(0编辑  收藏  举报