跳转到主要内容

Jupyter Python Comm实现,用于在ipykernel、xeus-python等中使用。

项目描述

Comm

它提供了一种注册内核Comm实现的方法,遵循Jupyter内核协议。它还提供了一个基Comm实现和默认的CommManager,可以用于。

在内核中注册comm实现

情况1:使用默认的CommManager和BaseComm实现

我们提供了用于IPython的默认实现

import comm


class MyCustomComm(comm.base_comm.BaseComm):
    def publish_msg(self, msg_type, data=None, metadata=None, buffers=None, **keys):
        # TODO implement the logic for sending comm messages through the iopub channel
        pass


comm.create_comm = MyCustomComm

这通常是ipykernel和JupyterLite的pyolite内核所做的事情。

情况2:提供您自己的comm管理器创建实现

import comm

comm.create_comm = custom_create_comm
comm.get_comm_manager = custom_comm_manager_getter

这是xeus-python通常会做的(它使用xeus的C++消息逻辑来实现自己的管理器)。

通信用户

像ipywidgets这样的库可以随后使用内核已注册的通信实现。

from comm import create_comm, get_comm_manager

# Create a comm
comm_manager = get_comm_manager()
comm = create_comm()

comm_manager.register_comm(comm)

项目详情


下载文件

下载适用于您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。

源代码分布

comm-0.2.2.tar.gz (6.2 kB 查看哈希)

上传时间 源代码

构建分布

comm-0.2.2-py3-none-any.whl (7.2 kB 查看哈希)

上传时间 Python 3

由支持