【发布时间】:2015-07-14 21:12:40
【问题描述】:
在 Jupyter 中,内核为我们希望在笔记本中使用的不同语言(例如 IRkernel)提供支持。这与使用魔法用其他语言编写(%load_ext rmagic 并在整个代码中使用 %%R)有什么不同?
【问题讨论】:
标签: ipython ipython-notebook jupyter ipython-magic
在 Jupyter 中,内核为我们希望在笔记本中使用的不同语言(例如 IRkernel)提供支持。这与使用魔法用其他语言编写(%load_ext rmagic 并在整个代码中使用 %%R)有什么不同?
【问题讨论】:
标签: ipython ipython-notebook jupyter ipython-magic
不同之处在于内核是本机的,即内核是使用允许远程执行和代码完成的协议的进程。因此,您可以使用纯 R 中的 R 内核和纯 Julia 中的 julia 内核。
另一方面,魔法 (%%R, %%fortran) 开始时仅限 Python,它们要求 Python 内核通过绑定库将一段代码执行为另一种语言。大多数时候,魔法只是 Python 库调用的语法糖。
从用户的角度来看,差异很小,但可能会产生一些后果。例如,在内核之间交换变量更难。有了魔法,数据交换更容易,但完成和自省更难。
希望对您有所帮助。
【讨论】: