使用 KernelClient API 在 ipython 内核中执行代码

2024-02-14

我有一个现有的 ipython 内核,带有一个通信文件“path/comm_file.json”,我想使用内核客户端 API 执行该内核中的代码(实际上我并不挑剔,任何方法都可以..)。我明白这是从 jupyter 做事情的最好方法文档 https://jupyter-client.readthedocs.org/en/latest/api/client.html。所以我写了下面的代码:

from jupyter_client import KernelClient
client = KernelClient(connection_file='path/comm_file.json')
client.execute('a = 10')

但是执行方法会出现以下错误:

  File "C:\Python27\lib\site-packages\jupyter_client\client.py", line 249, in execute
    self.shell_channel.send(msg)
  File "C:\Python27\lib\site-packages\jupyter_client\client.py", line 143, in shell_channel
    socket, self.session, self.ioloop
TypeError: object.__new__() takes no parameters

我在这里做错了什么?


我也在试图弄清楚客户端是如何工作的。这是一个开始的地方:

对于简单的阻塞客户端,您可以看看如何jupyter_测试_客户端 https://github.com/jupyter/jupyter_kernel_test and jupyter_console https://github.com/jupyter/jupyter_console作品。

from pprint import pprint
from jupyter_client.consoleapp import JupyterConsoleApp

class MyKernelApp(JupyterConsoleApp):
    def __init__(self, connection_file, runtime_dir):
        self._dispatching = False
        self.existing = connection_file
        self.runtime_dir = runtime_dir
        self.initialize()

app = MyKernelApp("connection.json", "/tmp")
kc = app.kernel_client
kc.execute("print 'hello'")
msg = kc.iopub_channel.get_msg(block=True, timeout=1)
pprint(msg)

您将需要辅助函数来正确处理 zmq 通道和 json 消息。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 KernelClient API 在 ipython 内核中执行代码 的相关文章

随机推荐

  • 确定 Luv Color 是非虚构的

    假设我在 Luv 颜色空间中有三个坐标 确定这些对应真实颜色的最佳方法是什么 假设你的 L 在域 0 100 中 你可以构建可见光谱的边界 https stackoverflow com a 48396021 931625然后确定您的 CI
  • 对指针的引用

    char str Hello char ptr str char rptr str ptr 和 rptr 有什么区别 我知道 rptr 是对指针的引用 理论上 但是它在与 ptr 的实现方面有何不同 C 中的引用是使用指针实现的吗 ptr
  • 如何检测浏览器关闭?

    在我的网络应用程序中 当用户登录时 我将他的 ID 添加到 servlet 中的有效 ID 向量中 当他注销时 我从向量中删除他的 ID 这样我就可以看到有多少当前用户处于活动状态 如果用户忘记注销 我的servelt生成的html有 在标
  • 以编程方式设置文件输入的值[重复]

    这个问题在这里已经有答案了 我已经读过这个here https stackoverflow com questions 1017224 dynamically set value of a file input 并且知道由于安全限制这是不可
  • .htaccess 破坏了所有 css 和 js,尽管我设置了绝对路径

    这是我的 htaccess 文件 Options FollowSymlinks RewriteEngine On RewriteCond REQUEST FILENAME f RewriteCond REQUEST FILENAME d R
  • 根据列中的范围扩展 pandas 数据框

    我有一个像这样的熊猫数据框 Name SICs Agric 0100 0199 Agric 0910 0919 Agric 2048 2048 Food 2000 2009 Food 2010 2019 Soda 2097 2097 The
  • 如何从命令行运行 db2 sql 命令?

    我怎样才能跑 sql命令UPDATE CONTACT SET EMAIL ADDRESS email protected cdn cgi l email protection 通过命令行 对于 db2 数据库 on linux 来自 she
  • Firefox 中未发送 Ajax 请求,错误未知

    在 Firefox 27 0 1 Fedora 20 jQuery 1 11 0 中执行 GET 同步 ajax 请求时 ajax ajaxParam then function r html r html function jqXHR c
  • 如何覆盖 Vue 组件中的作用域样式?

    让我们保存一下我有一个 Vue我从 Github 上的某个地方获取的组件 我们将其称为 CompB 并为蓝色标头添加一个 CSS 规则集 CompB Vue 我不拥有的依赖项 可能是从 Github 中提取的
  • 默认情况下,SQLite 真的不保留外键约束的数据完整性吗?

    较新版本的 SQLite支持外键约束 https stackoverflow com questions 3297363 implement use foreign keys in sqlite 可以定义 CREATE TABLE MAST
  • 使用 jquery 进行文本框验证

    我是 JQuery 新手 我想使用 jquery 对四个文本框进行验证 我已经完成的编码
  • onClick 函数“this”返回窗口对象

    我的 JavaScript 应用程序遇到了一个令人头疼的问题 如果我写一个这样的元素 li li 我得到 李 但是如果我这样做 li li 其中 foo 是 function foo alert this tagName 我得到 未定义 我
  • 在Python 2.7中编码时如何处理Linux上带空格的路径?

    我有一个 python 脚本 用于处理 Linux Mint 上目录中的文件 部分代码如下 path to dir home user Im a folder with libs to install if os path isdir pa
  • AngularJS http 返回值

    我想在 AngularJS 中编写一个返回值的函数 实际上它是一个字符串 该值是由 http 请求返回的 但异步让我发疯 我的第一次尝试是 this readParameter function key http method GET ur
  • Xamarin Forms - Prism - OnNavigedTo 调用两次

    因此 我已经使用 prism 开发了一个应用程序 2 个月 现在我意识到当我从 MasterDetailPage 中选择一个项目时 OnNavigedTo 方法被调用了两次 我不知道为什么会发生这种情况 我确信我错过了一些东西 但我大约需要
  • 实体框架核心代码优先:多对多关系的级联删除

    我正在使用 Entity Framework Core 版本 EntityFramework Core 7 0 0 rc1 final 由 SQL Server 2012 Express DB 支持 我需要建立一个多对多关系模型Person
  • 5秒后自动滚动页面到div

    我是 javascript 新手 现在我正在尝试这样做 如标题所示 我有一个页面 顶部有一个 div 与包含视频的页面一样大 后面是几个部分 例如这 div style height 100 width 100 div section st
  • IE9 现在会支持 WebSocket 吗?

    这个问题很简单 老话题是here https stackoverflow com questions 3377096 will ie9 support webgl and or websockets 自从 IE9 将于 2011 年 3 月
  • Verilog 中的“net”代表什么?

    我刚刚开始学习Verilog 据我了解 Verilog有net数据类型 什么是net代表 网络就是这样一种数据类型 您不使用它来存储值 它们代表物理连接 您可以将线路视为一种网络数据类型 你可以去网上看看更多here http www ee
  • 使用 KernelClient API 在 ipython 内核中执行代码

    我有一个现有的 ipython 内核 带有一个通信文件 path comm file json 我想使用内核客户端 API 执行该内核中的代码 实际上我并不挑剔 任何方法都可以 我明白这是从 jupyter 做事情的最好方法文档 https