从 KernelManager 获取原始 Python 个对象
Get raw Python objects from KernelManager
当 Jupyter 内核中的 运行 代码时,可以从各自的通道获取 iopub
或 shell
消息。是否也可以从内核中提取原始 python 对象?
针对下面的代码说
code = """a = {'a': 1}
b = {'b': 2}
"""
class Shell:
def __init__(self):
km = KernelManager()
km.start_kernel()
client = km.client()
client.start_channels()
client.execute(code)
print(client.get_iopub_msg())
print(client.get_shell_msg())
我想检索实际对象 a
和 b
以便它们可以在当前 python 应用程序中使用。这可能吗?
我找到了解决方法,使用 dill
将整个会话转储到内核中
dill.dump_session()
然后在主应用中加载
dill.load_session()
当 Jupyter 内核中的 运行 代码时,可以从各自的通道获取 iopub
或 shell
消息。是否也可以从内核中提取原始 python 对象?
针对下面的代码说
code = """a = {'a': 1}
b = {'b': 2}
"""
class Shell:
def __init__(self):
km = KernelManager()
km.start_kernel()
client = km.client()
client.start_channels()
client.execute(code)
print(client.get_iopub_msg())
print(client.get_shell_msg())
我想检索实际对象 a
和 b
以便它们可以在当前 python 应用程序中使用。这可能吗?
我找到了解决方法,使用 dill
将整个会话转储到内核中
dill.dump_session()
然后在主应用中加载
dill.load_session()