我为什么喜欢使用 IPython Shell 和 Jupyter Notebook

Jupyter Notebook 将 IPython Shell 提升到了一个新的水平。
44 位读者喜欢这篇文章。
Computer laptop in space

Opensource.com

Jupyter 项目最初是 IPython 和 IPython Notebook。 最初是一个 Python 特定的交互式 shell 和 notebook 环境,后来扩展到与语言无关,支持 Julia、Python 和 R,以及潜在的任何其他语言。

Jupyter

(© 2021, Ben Nuttall)

IPython 是一个 Python shell——类似于你在命令行输入 pythonpython3 时得到的——但它更聪明,更有帮助。 如果你曾经在 Python shell 中输入过一个多行命令并想要重复它,你就会理解不得不一次一行地滚动浏览你的历史记录是多么令人沮丧。 使用 IPython,你可以一次滚动浏览整个代码块,同时仍然能够逐行导航和编辑这些块的各个部分。

iPython

(© 2021, Ben Nuttall)

它具有自动完成功能并提供上下文相关的建议

iPython offers suggestions

(© 2021, Ben Nuttall)

它默认进行美观打印

它甚至允许你运行 shell 命令

它还提供有用的功能,例如向对象添加 ? 作为运行 help() 的快捷方式,而不会中断你的流程

如果你正在使用虚拟环境(请参阅我关于 virtualenvwrapper 的文章,请使用 pip 在环境中安装它)

pip install ipython

要在系统范围内安装它,你可以在 Debian、Ubuntu 或 Raspberry Pi 上使用 apt

sudo apt install ipython3

或者使用 pip

sudo pip3 install ipython

Jupyter Notebook

Jupyter Notebook 将 IPython Shell 提升到了一个新的水平。 首先,它们是基于浏览器的,而不是基于终端的。 要开始使用,请安装 jupyter

如果你正在使用虚拟环境,请使用 pip 在环境中安装它

pip install jupyter

要在系统范围内安装它,你可以在 Debian、Ubuntu 或 Raspberry Pi 上使用 apt

sudo apt install jupyter-notebook

或者使用 pip

sudo pip3 install jupyter

使用以下命令启动 Notebook:

jupyter notebook

这将在你的浏览器中打开

你可以使用 New 下拉菜单创建一个新的 Python 3 Notebook

现在你可以在 In[ ] 字段中编写和执行命令。 使用 Enter 在块内换行,使用 Shift+Enter 执行

你可以编辑和重新运行块。 你可以重新排序它们、删除它们、复制/粘贴等等。 你可以按任何顺序运行块——但请注意,创建的任何变量都将根据执行的时间而不是它们在 notebook 中出现的顺序来确定范围。 你可以从 Kernel 菜单中重新启动并清除输出,或者重新启动并运行所有块。

使用 print 函数每次都会输出。 但是如果你只有一个未分配的语句或者你的最后一个语句未分配,它仍然会被输出

你甚至可以将 InOut 视为可索引的对象

所有 IPython 功能都可用,并且通常呈现得更好一些

你甚至可以使用 Matplotlib 进行内联绘图

最后,你可以保存你的 Notebook 并将它们包含在 Git 存储库中,如果你推送到 GitHub,它们将呈现为已完成的 Notebook——输出、图形和所有内容(如 此示例 中所示)


本文最初出现在 Ben Nuttall 的 Tooling Tuesday blog 上,并经许可重复使用。

接下来阅读什么
标签
User profile image.
Ben 是 BBC News Labs 的软件工程师,曾任 Raspberry Pi 的社区经理。 他喜欢 Linux、Python 和所有开源的东西! 在 Twitter 上关注 Ben @ben_nuttall。

评论已关闭。

Creative Commons License本作品根据 Creative Commons Attribution-Share Alike 4.0 International License 许可。
© . All rights reserved.