小编Sci*_*McQ的帖子

Jupyter客户端通过Python连接到运行内核

我正在尝试以编程方式(使用Python)与我正在运行的jupyter内核进行交互,作为原型实验.

我在浏览器中运行了一个jupyter笔记本,我通过magic命令从笔记本中获取了连接信息

%connect_info
{
 "signature_scheme": "hmac-sha256",
 "shell_port": 49545,
 "kernel_name": "",
 "iopub_port": 49546,
 "stdin_port": 49547,
 "hb_port": 49549,
 "control_port": 49548,
 "key": "1a359267-f30d84302c39d352d6ac17c3",
 "transport": "tcp",
 "ip": "127.0.0.1"
}
Run Code Online (Sandbox Code Playgroud)

KernelClient类的jupyter_client文档让我相信我可以连接这个信息并用这个对象监听/显示代码,并发送代码通过我连接到的内核执行但是,我没有运气好我一直在尝试如下:

>>> from jupyter_client import KernelClient
>>> connection = {
  "signature_scheme": "hmac-sha256",
  "shell_port": 49545,
  "kernel_name": "",
  "iopub_port": 49546,
  "stdin_port": 49547,
  "hb_port": 49549,
  "control_port": 49548,
  "key": "1a359267-f30d84302c39d352d6ac17c3",
  "transport": "tcp",
  "ip": "127.0.0.1"
}
>>> client = KernelClient(**connection)
>>> client.history()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/path/to/envs/jupyter-nb/lib/python3.5/site-packages/jupyter_client/client.py", line 347, in …
Run Code Online (Sandbox Code Playgroud)

python ipython jupyter jupyter-notebook

13
推荐指数
1
解决办法
759
查看次数

使用Python C API将Python的int列表传递给C函数

我在使用MacOS High Sierra上的Python3.6 anaconda发行版处理传递给Python C API包装函数的int列表时遇到问题.我想将传入的int列表转换为我可以在C中使用的int数组.

这里有一个类似的问题使用Python/C API将Python列表传递给C函数,我可以开始工作,但处理一个int列表似乎是不同的.

这是我到目前为止所拥有的.

static PyObject * myModule_sumIt(PyObject *self, PyObject *args) {
  PyObject *lst; 
  if(!PyArg_ParseTuple(args, "O", &lst)) {
    Py_DECREF(lst);
    return NULL;
  }

  int n = PyObject_Length(lst);
  printf("\nLength of list passed in is %d\n", n);

  int nums[n];
  int sum = 0;
  for (int i = 0; i < n; i++) {
     PyLongObject *item = PyList_GetItem(lst, i);
     sum += item;
     printf("\ni = %d\titem = %d\tsum = %d\n", i, item, sum);
     Py_DECREF(item);
  }

  Py_DECREF(lst); …
Run Code Online (Sandbox Code Playgroud)

c python c-api

1
推荐指数
1
解决办法
60
查看次数

标签 统计

python ×2

c ×1

c-api ×1

ipython ×1

jupyter ×1

jupyter-notebook ×1