Jupyter 简明教程

IPython - Introduction

Project Jupyter 是用于交互式计算的一套软件产品。IPython 最初是由 Fernando Perez 于 2001 年开发的,作为 Python 解释器增强版。2011 年推出了基于 Web 的 IPython 终端界面,称为 IPython notebook。2014 年,Project Jupyter 开始作为 IPython 的一个分支项目。

Jupyter 项目下的软件包包括 −

  1. Jupyter notebook − Python、Julia、R 及其他众多语言的编程环境的 Web 界面

  2. QtConsole − 与 IPython 类似的基于 Qt 的 Jupyter 内核终端

  3. nbviewer − 共享 Jupyter 笔记本的功能

  4. JupyterLab − 现代 Web 界面集成所有产品。

Python 的标准发行版随 REPL (Read-Evaluate-Print Loop) 环境一起提供,该环境采用 IPython shell 的形式带 >>> 提示符。IPython(即 Interactive Python)是 Python 的增强型交互式环境,它比标准 Python shell 具有更多功能。

Features of IPython

IPython 提供的特性比标准 Python 多。它们如下所述 −

  1. 提供功能强大的交互式 Python shell。

  2. 可用作 Jupyter notebook 及其他 Project Jupyter 的前端工具的主内核。

  3. 具有对象内省能力。内省是指在运行时检查对象属性的能力。

  4. Syntax highlighting.

  5. 存储交互历史。

  6. 关键词、变量和函数名称的 Tab 补全。

  7. 魔术命令系统,可用于控制 Python 环境及执行 OS 任务。

  8. 能够嵌入到其他 Python 程序中。

  9. 提供对 Python 调试器的访问。

History and Development

IPython 最初是由 Fernando Perez 于 2001 年开发的。其当前版本是 IPython7.0.1,它需要 Python 3.4 版或更高版。IPython 6.0 是第一个支持 Python 3 的版本。使用 Python 2.7 的用户应使用 IPython 的 2.0 到 5.7 版

计算笔记本的概念始于 80 年代,当时 MATLAB 和 Mathematica 得以发行。面向交互式外壳的这些 GUI 前端具有文本格式化、添加图形、表格以及添加数学符号等功能。Sage Notebook 也是一款基于 Web 的笔记本。

IPython 的创建者于 2005 年开始为 IPython 外壳的笔记本界面开展工作。IPython Notebook 很快增加了对其他语言(例如 R 和 Julia)的支持。直到 2014 年,Perez 才将 Jupyter 项目作为一个衍生项目从 IPython 中剥离出去,因为 IPython 项目已经变得庞大,其中增加了 Notebook Server 和 Qt 控制台等产品。

自 IPython 4.0 起,所有附加组件都被移至 Project Jupyter 并为 IPython Notebook 增加了对其他语言的支持。IPython 继续专注于改进其增强的解释器功能。它还为 Jupyter Notebook 前端提供主要内核。