ipython - 如何使用指定的命名空间启动 IPython Notebook

标签 ipython

我有一个用 Python 编写的基于 GUI(TraitsUI/PyQt/Envisage)的应用程序。我想生成一个 IPython Notebook,在其中公开一个小的 API 和许多对象。这些对象包括一个 SQLAlchemy session 和一堆 SQLAlchemy 模型。

我看了很多,但我找不到任何这样的例子。我可以启动一个笔记本:

from IPython.frontend.html.notebook import notebookapp
app = notebookapp.NotebookApp.instance()
app.initialize()
app.start()

并且效果很好(虽然我更喜欢“开始”是非阻塞的......我假设如果需要我可以在另一个线程中完成它),但我不能改变命名空间。

我还发现了这样的例子:
from IPython.zmq.ipkernel import IPKernelApp

namespace = dict(z=1010)

kapp = IPKernelApp.instance()
kapp.initialize()

# Update the ns we want with special variables auto-created by the kernel
namespace.update(kapp.shell.user_ns)
# Now set the kernel's ns to be ours
kapp.shell.user_ns = namespace

kapp.start()

但我不确定如何从这里实际打开笔记本。

有人有什么建议吗?

谢谢!

最佳答案

>>> import IPython
>>> z=1010
>>> IPython.embed()
Python 3.5.2 (default, Oct  8 2019, 13:06:37)
Type 'copyright', 'credits' or 'license' for more information
IPython 7.9.0 -- An enhanced Interactive Python. Type '?' for help.

In [1]: z
Out[1]: 1010

关于ipython - 如何使用指定的命名空间启动 IPython Notebook,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11019440/

相关文章:

python - 填充 matplotlib 中两个函数之间的空间 : unsightly patch

ipython - 如何在 IPython 中使用 read_gbq 或其他 bq 访问 BigQuery 中托管的数据集

ubuntu - ipython 笔记本升级到 Ubuntu 15.04 后停止工作

virtual-machine - 在 Ubuntu 12.04 VirtualBox Guest 上安装 IPython 并从 Windows 主机上的浏览器使用它

r - 在 Windows 上为 Ipython 安装 R 内核

python - 更改 Pandas 中的默认选项

python pandas 没有连接到空 DataFrame 中

python - 如何在 iPython 中选择 Python 3.7 或 Python 3.8?

macos - 卸载 ipython mac os x

python - 使用 Pandas 绘制时间戳无法按预期工作