热门标签 | 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/


推荐阅读
  • 本文分享了作者在使用LaTeX过程中的几点心得,涵盖了从文档编辑、代码高亮、图形绘制到3D模型展示等多个方面的内容。适合希望深入了解LaTeX高级功能的用户。 ... [详细]
  • Canopy环境安装与使用指南
    《利用Python进行数据分析》一书推荐使用EPDFree版本的环境,然而随着技术的发展,目前更多人倾向于使用Canopy。本文将详细介绍Canopy的安装及使用方法。 ... [详细]
  • 本文介绍了两个重要的Node.js库——cache-content-type和mime-types,它们在处理HTTP响应头时非常有用。cache-content-type是基于mime-types构建的,并且实现了缓存机制以提高性能。 ... [详细]
  • 2023年,Android开发前景如何?25岁还能转行吗?
    近期,关于Android开发行业的讨论在多个平台上热度不减,许多人担忧其未来发展。本文将探讨当前Android开发市场的现状、薪资水平及职业选择建议。 ... [详细]
  • 本文详细介绍了如何在本地环境中安装配置Frida及其服务器组件,以及如何通过Frida进行基本的应用程序动态分析,包括获取应用版本和加载的类信息。 ... [详细]
  • 本文详细介绍了如何利用 Python 语言从文本文件中读取数据,并将其存储为字典格式,涵盖多种实用技巧和示例代码。 ... [详细]
  • 本文详细介绍了如何使用 Python 编程语言中的 Scapy 库执行 DNS 欺骗攻击,包括必要的软件安装、攻击流程及代码示例。 ... [详细]
  • Hadoop集群搭建:实现SSH无密码登录
    本文介绍了如何在CentOS 7 64位操作系统环境下配置Hadoop集群中的SSH无密码登录,包括环境准备、用户创建、密钥生成及配置等步骤。 ... [详细]
  • HDU1085 捕获本·拉登!
    问题描述众所周知,本·拉登是一位臭名昭著的恐怖分子,他已失踪多年。但最近有报道称,他藏匿在中国杭州!虽然他躲在杭州的一个洞穴中不敢外出,但近年来他因无聊而沉迷于数学问题,并声称如果有人能解出他的题目,他就自首。 ... [详细]
  • 本文详细介绍了利用JavaScript实现的五种不同的网页弹出窗口技术,包括全屏窗口、全屏模式窗口、带收藏链接工具栏的窗口、网页对话框及HTA窗口。 ... [详细]
  • GCC(GNU Compiler Collection)是GNU项目下的一款功能全面且高效的多平台编译工具,广泛应用于Linux操作系统中。本文将详细介绍GCC的特点及其基本使用方法。 ... [详细]
  • 本文介绍了在解决Hive表中复杂数据结构平铺化问题后,如何通过创建视图来准确计算广告日志的曝光PV,特别是针对用户对应多个标签的情况。同时,详细探讨了UDF的使用方法及其在实际项目中的应用。 ... [详细]
  • 尤洋:夸父AI系统——大规模并行训练的深度学习解决方案
    自从AlexNet等模型在计算机视觉领域取得突破以来,深度学习技术迅速发展。近年来,随着BERT等大型模型的广泛应用,AI模型的规模持续扩大,对硬件提出了更高的要求。本文介绍了新加坡国立大学尤洋教授团队开发的夸父AI系统,旨在解决大规模模型训练中的并行计算挑战。 ... [详细]
  • 利用 Calcurse 在 Linux 终端高效管理日程与任务
    对于喜爱使用 Linux 终端进行日常操作的系统管理员来说,Calcurse 提供了一种强大的方式来管理日程安排、待办事项及会议。本文将详细介绍如何在 Linux 上安装和使用 Calcurse,帮助用户更有效地组织工作。 ... [详细]
  • HTML:  将文件拖拽到此区域 ... [详细]
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社区 版权所有