扩展与IPython中的内核

时间:2015-07-14 21:12:40

标签: ipython ipython-notebook jupyter ipython-magic

在Jupyter中,内核为我们想要在笔记本中使用的不同语言(例如IRkernel)提供支持。这与使用魔法编写其他语言(%load_ext rmagic并在整个代码中使用%% R)有何不同?

1 个答案:

答案 0 :(得分:2)

不同之处在于内核是本机的,即内核是指代允许远程执行和代码完成的协议的进程。所以你可以因此得到一个纯粹在R中的R内核和一个纯粹在Julia中的julia内核。

另一方面,

魔术师(%%R, %%fortran)仅在Python开始时,他们要求Python内核通过绑定库将一段代码执行到另一种语言中。大多数时候,魔法只是Python库调用的语法糖。

从用户的角度来看,差异很小,但可能会产生一些后果。例如,在内核之间交换变量比较困难。使用魔法,数据交换更容易,但完成和内省更难。

希望有所帮助。