【问题标题】:Can VSCode interact with the kernel of current Jupyter notebook?VSCode 可以与当前 Jupyter notebook 的内核交互吗?
【发布时间】:2019-04-30 16:42:05
【问题描述】:

在 VSCode 中,脚本包含:

#%%
a = 3

创建一个 Jupyter 单元。运行单元会启动 Jupyter 服务器并在 Python 交互窗口中评估代码。

我想与此会话进行交互并从控制台将print(a) 传递给它,而不修改 Jupyter 笔记本。那可能吗?我找不到打开 Python 会话的方法,其中将定义 a

【问题讨论】:

  • @AlexanderReynolds 老实说,我想不出 GIL 在这里有什么意义。这将限制单个进程。没有什么能阻止你一次启动 50 个独立的 Python 脚本,那么你就只能任由操作系统为每个脚本分配 CPU 资源了
  • @AlexanderReynolds 但那将是 IPython;它所做的只是拥有一个持久的命名空间。 IPython 内核完全为此设置,我只是不知道专门针对 Jupyter,因为我通常使用 Spyder。
  • 嗯,Jupyter 只是使用了 iPython 内核,所以它们之间的答案应该是一样的。我想我直到现在才知道 iPython 是如何工作的!我认为它是一个经过修改的解释器,但这根本不是它的工作方式,所以是的,我明白你为什么说 GIL 似乎不相关。对于 OP --> ipython.readthedocs.io/en/stable/…

标签: python visual-studio-code jupyter-notebook jupyter


【解决方案1】:

我建议从我们的 GitHub 记录一个建议: https://github.com/Microsoft/vscode-python/issues

这可能与您的要求相似。 https://github.com/Microsoft/vscode-python/issues/3101

这将允许您在交互式窗口中输入临时代码。如果你不喜欢它,你可以删除它。

【讨论】:

    【解决方案2】:

    你可以调用ipython的%qtconsole魔法命令

    #%%
    %qtconsole
    

    这会打开一个单独的 jupyter qt-console 窗口,它指向与 vbcode 'notebook' 相同的内核。

    【讨论】:

      猜你喜欢
      • 2022-01-13
      • 2022-11-02
      • 1970-01-01
      • 2020-12-21
      • 2019-07-26
      • 2016-05-14
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多