我想模仿笔记本服务器的功能,而是从中央逻辑主体(即我自己的Python脚本)协调不同IPython/Jupyter内核的创建/管理。

例如,我要:

  • 定义一个抽象命令,例如“add(x,y)”
  • 将抽象命令传达给多个内核,例如IPython内核和Scala内核
  • 让每个内核都执行命令,但是他们希望
  • 将每个内核的结果返回到逻辑
  • 的中心主体

    谁能指出我如何以编程方式启动/停止/与多个IPython/Jupyter内核通信的方向?

    最佳答案

    KernelManager处理启动和停止单个内核,并且有一个MultiKernelManager来协调多个内核。

  • http://ipython.org/ipython-doc/3/api/generated/IPython.kernel.manager.html
  • http://ipython.org/ipython-doc/3/api/generated/IPython.kernel.multikernelmanager.html

  • 然后,您可以使用.client()方法获取一个KernelClient实例,该实例处理与内核的通信:
  • http://ipython.org/ipython-doc/3/api/generated/IPython.kernel.client.html

  • 有关如何与内核通信的详细信息,请参见message spec docs。其中一些是由KernelClient提取的,但是您可能需要了解其中的一些内容。

    关于python - 如何通过Python脚本管理多个IPython/Jupyter内核并与之通信?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29949881/

    10-08 22:29
    查看更多