9

这个较旧的问题似乎已过时。

它曾经是(基于阅读 git reposqtconsole 问题跟踪器),您可以在没有运行后台的控制台窗口的情况下启动 Jupyter QtConsole:

pythonw -m jupyter qtconsole

但是,在最新版本的 Jupyter 中,这仍会启动后台控制台窗口。

在此处输入图像描述

我想知道是否有人知道如何在没有烦人的控制台窗口的情况下启动 QtConsole。我知道您可以通过 Anaconda Navigator 程序执行此操作,但我不想启动一个程序,以便随后启动另一个程序。我希望有一个简单的批处理脚本甚至是 python 脚本,这样我就可以使用开始菜单快捷方式启动

直接运行模块也不行:

pythonw -c "from qtconsole.qtconsoleapp import main; main()"

如图所示,这仍然会启动一个新的控制台窗口,所以我真的不知道这是否可以通过某种直接的方式实现,或者 Anaconda Navigator 是否正在做一些黑魔法来实现这一点

4

1 回答 1

5

这里有两个问题:

这两个都是 Anaconda 特有的,不会发生在 Python 中。因此,请针对https://github.com/conda-forge/qtconsole-feedstock提交错误以修复此问题。

这些是解决方法:

  • 对于第一个错误,运行pythonw <Scripts_dir>\jupyter-qtconsole-script.py它是.exe包装的脚本。
    (这是 Anaconda 特有的。常规 Python 使用不同的包装机制。Anaconda 必须打补丁之类setuptools的。)
  • 对于第二个,将前面提到的完整路径替换为kernel.jsonpython”。ipykernel当您更新此文件所属的包时,此更改将被覆盖(可以通过在 中搜索来检查%CONDA_PREFIX%\pkgs)。

OP 报告该解决方案可能会破坏其他 Anaconda 软件包。我相信那些打破标准流的可用性的假设。虽然它在我的书中也算作一个错误,但它一定是因为 Anaconda 软件包没有使用此设置进行测试。


要创建快捷方式/批处理文件以在 Anaconda Prompt 环境中运行上述命令,请参阅例如How to make batch files run in anaconda prompt

于 2018-09-12T17:14:30.923 回答