热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

pythonnotebook_PythonNotebook(JupyterNotebook)介绍

1.介绍前一段跑别人的python代码,扩展名是ipynb,不能直接用python命令执行,于是只好安装了Jupyternotebook

1. 介绍

前一段跑别人的python代码,扩展名是ipynb,不能直接用python命令执行,于是只好安装了Jupyter notebook软件,然后发现它是一个非常好用的程序写作工具。

对我来说,它最大的好处就是文档和程序可以写在一起了。在写程序的时候往往会有一些思路,解释,分析,运行结果等等,需要记下来,比较长的就不太适合在程序里面注释,记在其它地方又容易忘掉。Notebook完美地解决了这个问题。当然它还有很多其它优点,下面简单介绍一下。

2. Jupyter Notebook

IPYNB是ipython notebook的缩写,它开始只支持python,后来又支持了其它40多种编辑语言,就改名叫Jupyter notebook。

Notebook存储python程序的文件是ipynb,ipynb一种文本文件,可以用vi直接打开,文件中除了程序和说明还有一些结构信息,不能直接用python执行,但在notebook界面中可以被导出成.py程序,还可以导出成html, pdf等格式,像Kaggle上面的程序及说明都是这种格式的,Github也支持该格式的完美显示,即:在Github中打开.pynb文件看到的就是分块的代码。

Notebook是用网页访问的,你可以在网页中编写和执行程序。并且可以在其它机器上远程调用它,这种环境也屏蔽了不同系统的显示差异。在分享示例代码的时候,也非常方便,完全不用再去考虑格式的问题。

3. 安装

$ sudo pip3 install ipython

$ sudo pip3 install jupyter  #用pip命令自动安装相关的依赖包

4. 运行

$ ipython3 notebook

此时浏览器被打开,本机开启了8888端口,浏览器通过访问该端口,列出了当前目录下的ipynb文件。

640e65d63abb

此时可以在浏览器中编辑和运行已存在的程序,如果还没有ipynb文件,可点击右上的new新建程序。在编写和调试程序的过程中,错误提示和运行结果也都显示在浏览器中。

5. 单元

Notebook中的基本元素是“Cell”即单元。主要有两种形式的单元: 代码单元:代码单元左边有 In [ ]: 这样的序列标记,方便查看代码的执行次序。其结果显示在本单元下方。

Markdown 单元:在这里可以编辑文本,采用 markdown 的语法规范,可以设置文本格式、插入链接、图片甚至数学公式。 单元通过Insert菜单添加,在Cell菜单中可以选择运行全部代码或者某个代码单元,这有点像单步调试,也方便也省时。习惯了这种方式之后,代码分块也是对代码的功能划分。有时也可以把完全不同的几种思路写在一份代码里,只要运行不同单元即可,在调试过程中非常方便。

与VI类似,Notebook也有编辑模式和命令模式,命令模式时单元左侧显示蓝线,编辑模式时左侧显示绿线。通过Esc键可切换到命令模式。在命令模式可以使用一些快捷键,比如用Shift+L控制是否显示行号。

6. 导出各种格式文件

Notebook支持导出Python, Html,PDF等格式文件,具体方法是:

notebook菜单->File->Download as->xx

7. 参考

(1) 左手程序员,右手作家:你必须会的Jupyter Notebook

http://python.jobbole.com/87527/


推荐阅读
  • 本文详细介绍如何使用Python进行配置文件的读写操作,涵盖常见的配置文件格式(如INI、JSON、TOML和YAML),并提供具体的代码示例。 ... [详细]
  • 本文介绍了多个关于JavaScript的书籍资源、实用工具和编程实例,涵盖从入门到进阶的各个阶段,帮助读者全面提升JavaScript编程能力。 ... [详细]
  • Coursera ML 机器学习
    2019独角兽企业重金招聘Python工程师标准线性回归算法计算过程CostFunction梯度下降算法多变量回归![选择特征](https:static.oschina.n ... [详细]
  • 本文详细介绍了Java中org.eclipse.ui.forms.widgets.ExpandableComposite类的addExpansionListener()方法,并提供了多个实际代码示例,帮助开发者更好地理解和使用该方法。这些示例来源于多个知名开源项目,具有很高的参考价值。 ... [详细]
  • DNN Community 和 Professional 版本的主要差异
    本文详细解析了 DotNetNuke (DNN) 的两种主要版本:Community 和 Professional。通过对比两者的功能和附加组件,帮助用户选择最适合其需求的版本。 ... [详细]
  • Python自动化处理:从Word文档提取内容并生成带水印的PDF
    本文介绍如何利用Python实现从特定网站下载Word文档,去除水印并添加自定义水印,最终将文档转换为PDF格式。该方法适用于批量处理和自动化需求。 ... [详细]
  • 本文深入探讨了Linux系统中网卡绑定(bonding)的七种工作模式。网卡绑定技术通过将多个物理网卡组合成一个逻辑网卡,实现网络冗余、带宽聚合和负载均衡,在生产环境中广泛应用。文章详细介绍了每种模式的特点、适用场景及配置方法。 ... [详细]
  • 在现代网络环境中,两台计算机之间的文件传输需求日益增长。传统的FTP和SSH方式虽然有效,但其配置复杂、步骤繁琐,难以满足快速且安全的传输需求。本文将介绍一种基于Go语言开发的新一代文件传输工具——Croc,它不仅简化了操作流程,还提供了强大的加密和跨平台支持。 ... [详细]
  • 本文详细介绍了 Dockerfile 的编写方法及其在网络配置中的应用,涵盖基础指令、镜像构建与发布流程,并深入探讨了 Docker 的默认网络、容器互联及自定义网络的实现。 ... [详细]
  • 本文介绍了如何使用JQuery实现省市二级联动和表单验证。首先,通过change事件监听用户选择的省份,并动态加载对应的城市列表。其次,详细讲解了使用Validation插件进行表单验证的方法,包括内置规则、自定义规则及实时验证功能。 ... [详细]
  • 本文介绍了一款用于自动化部署 Linux 服务的 Bash 脚本。该脚本不仅涵盖了基本的文件复制和目录创建,还处理了系统服务的配置和启动,确保在多种 Linux 发行版上都能顺利运行。 ... [详细]
  • 精选30本C# ASP.NET SQL中文PDF电子书合集
    欢迎订阅我们的技术博客,获取更多关于C#、ASP.NET和SQL的最新资讯和资源。 ... [详细]
  • libsodium 1.0.15 发布:引入重大不兼容更新
    最新发布的 libsodium 1.0.15 版本带来了若干不兼容的变更,其中包括默认密码散列算法的更改和其他重要调整。 ... [详细]
  • 利用决策树预测NBA比赛胜负的Python数据挖掘实践
    本文通过使用2013-14赛季NBA赛程与结果数据集以及2013年NBA排名数据,结合《Python数据挖掘入门与实践》一书中的方法,展示如何应用决策树算法进行比赛胜负预测。我们将详细讲解数据预处理、特征工程及模型评估等关键步骤。 ... [详细]
  • 中科院学位论文排版指南
    随着毕业季的到来,许多即将毕业的学生开始撰写学位论文。本文介绍了使用LaTeX排版学位论文的方法,特别是针对中国科学院大学研究生学位论文撰写规范指导意见的最新要求。LaTeX以其精确的控制和美观的排版效果成为许多学者的首选。 ... [详细]
author-avatar
勇胆识_156
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有