Python的编辑工具-Jupyter notebook实战案例
作者:尹正杰
版权声明:原创作品,谢绝转载!否则将追究法律责任。
一.安装Jupyter
1>.jupyter notebook概述
我们知道Python是有交互式命令行的,但其功能相对较弱,因此有人开发了ipython,它对Python解释器进行了封装,使得交互式界面更友好。但ipython和原生Python解释器一样,均无法保存之前写过的代码,一般用于测试代码。 而今天我们介绍等等jupyter notebook它底层就是用的ipython进行交互的,而且我们写的代码是可以以文件形式保存的。jupyter Notebook是网页版交互式代码笔记工具,它是一款程序员和科学工作者的编程/文档/笔记展示软件。 jupyter Notebook是一个采用C/S架构的网站,通过Tornado建立WEB服务器端,使用浏览器作为客户端。其交互式的编程环境,友好的界面,便于分享的文档格式,对排版语法,绘图,数学公式的支持,使它成为最流行的Python科学计算工具。
毫不客气的说:jupyter notebook = Python + MaTLAB + Word + Excel + PowerPoint
使用场景:编程(探索,学习,数据方向),文档,笔记,教学,演讲,数据分析报告等等。
温馨提示:
以"!","%","_"等特殊符号开头的命令,叫魔术(magic)命令,用于加强IPython shell功能。需要注意的是,魔术命令后面不能带有Python注释,否则会报错哟~
不能在除IPython以外的Python环境执行:
(1)"!":
执行shell命令,在命令前面加"!",如"!conda env list"。
(2)"%":
以"%"开头的为行命令,只对命令所在的行有效。
(3)"%%":
以"%%"开头的为单元命令,单元命令必须出现在单元第一行,对整个单元都有效。
(4)"_":
保存上一次执行的结果。
2>.安装jupyter
C:Usersyinzhengjie>pip install jupyter #需要注意的是,当我们安装jupyter时可以不提前安装ipthon,因为在安装jupyter时会自动检测当前Python环境是否有ipython环境,若没有回自动安装。
3>.启动jupyter的笔记本(notebook)功能
C:Usersyinzhengjie>jupyter notebook #执行该命令后会自动帮咱们打开一个网页,如下图所示。接下来我们就可以写我们的Python代码了(需要注意的是,你在哪个目录启动notebook,那么该目录就是其对应的家目录哟~)
温馨提示:
也可以直接在命令行敲击"jupyter notebook"启用其功能,用法基本上一致。终止程序也只需按"Ctrl + c"即可。
4>.使用jupyter的notebook时指定根目录
D:>jupyter notebook --notebook-dir D:yinzhengjiepython #指定根目录为"D:yinzhengjiepython"
5>.查看jupyter命令的帮助信息
C:Usersyinzhengjie>jupyter -h
6>.查看"jupyter notebook"子命令的帮助信息
C:Usersyinzhengjie>jupyter notebook -h
二.jupyter notebook网页的常见操作
1>.列表页操作
所谓的列表页其实就是我们刚刚启用Jupyter Notebook服务时自动打开的浏览器页面,如下图所示。 列表页有以下常见操作: (1)新建jupyter文件: 点击"Files" => 点击"New" => 选择要新建的文件类型(比如你可以选择"Python 3","Text File","Terminal"等) (2)文件的上传 点击"Files" => 点击"Upload" => 点击"上传",即可上传成功。 (3)文件或目录的重命名操作 点击"Files" => 勾选对应的文件或目录,选择对应的操作,比如"RENAME"操作,需要注意的是,正在运行的文件是无法执行"RENAME"操作的,需要将该文件先"Shutdown"。 (4)停止文件进程: 点击"Running" => 选择要关闭的Notebooks,点击"关闭"按钮即可。 (5)导入和导出文件: 本质上对应的就是普通文件的复制粘贴操作,只需将对应的文件复制到jupyter notebook的工作目录即可。
温馨提示: jupyter notebook的文档格式是".ipynb",本质上是一种类JSON的文本格式。
2>.内页操作
所谓内页就是使用列表页打开的新标签网页,比如在列表页新建一个Python文件,那么就会自动打开一个内页,如下图所示。
内页有以下常见操作:
(1)菜单栏操作
比如导出文件,依次点击"File" => "Download as" => 根据需求选择你要导出的格式(比如"HTML","Markdown","PDF","Python"格式等)
(2)工具栏操作
比如保存文件,可以点击保存按钮的logo,也可以直接使用"Ctrl + s",基本上工具栏的操作都可以使用快捷键来替代。
工具栏各图标说明:保存,插入cell,剪切cell,粘贴cell,向上移动cell,向下移动cell,执行cell代码,重启Python内核,cell分类模式(Code/Markdown/Raw NBConvert/H1-H6) => 控制台
(3)工作区:
可以支持一系列的快捷键,当然也支持上面的工具栏操作哟~但是操作的对象都是针对工作区的每个cell。
温馨提示:
cell模式分类说明:
Code:
该模式用来写代码,可以执行其中的代码块。
Markdown:
该模式可以写解释,文档注释等,支持Markdown格式,可以执行用来解析。
Raw NBConvert:
cell内容原来现实,文本不解析,即不能当代码执行。
H1-H6:
标题模式,支持Markdown语法,只不过字体会变大,可以执行进行解析。
三.Cell操作
相比vim编辑工具而言,jupyter notebook相对友好一点,因为它只有两个模式,即编辑模式(光标在cell内,即可以进行标记操作)和命令模式(光标未在cell内,即该模式不可以编辑cell)。
在某个cell内单机鼠标,就进入到标记模式,按"ESC"就可以从编辑模式退出,当然,你也可以直接将鼠标移动到非cell内的区域,也会自动退出编辑模式。
常用的cell快捷键如下所示:
a|A: 在某个cell上面新增加一行cell。 b|B 在某个cell下面新增一行cell。 d|D: 删除一行cell。
z|Z:
回退操作。 m|M: 将某行cell变为纯文本的内容,即Markdown模式而非Python代码,你可以理解成注释内容。
y|Y:
代码模式。
l|L:
显示某个cell的行号。
shift + l|L:
显示所有cell的行号。
Ctrl + shift + 减号(-):
在编辑模式中,以光标处为分隔符,将一个cell分割为2个cell。
shift + m|M:
向下合并cell。
shift + enter: 执行某行cell内的代码,并产生一个新的cell。 ctrl + enter: 执行某行cell内的代码,但不会产生新的cell。
ctrl + s:
保存代码。
查看|设置快捷键方式如下:
依次点击菜单栏中的"Help" => "Keyboard Shortcuts" => 如果想要自定义快捷键也可以点击"编辑快捷键" => 修改后点击"确定"按钮