【问题标题】:IPython 4 shell does not work with Sublime REPLIPython 4 shell 不适用于 Sublime REPL
【发布时间】:2015-12-19 13:51:43
【问题描述】:

我在从 Sublime REPL 包运行 IPython shell 时遇到问题。

这是我得到的:

C:\Anaconda\lib\site-packages\IPython\config.py:13: ShimWarning: 
The`IPython.config` package has been deprecated. You should import from 
traitlets.config instead.
"You should import from traitlets.config instead.", ShimWarning)

C:\Anaconda\lib\site-packages\IPython\terminal\console.py:13: ShimWarning:  
The `IPython.terminal.console` package has been deprecated. You should 
import from jupyter_console instead.
"You should import from jupyter_console instead.", ShimWarning)

C:\Anaconda\lib\site-packages\IPython\frontend.py:21: ShimWarning: The top-
level `frontend` package has been deprecated. All its subpackages have been 
moved to the top `IPython` level.
"All its subpackages have been moved to the top `IPython` level.", 
ShimWarning)

Traceback (most recent call last):
File "C:\Users\Vladimir\AppData\Roaming\Sublime Text 
3\Packages/SublimeREPL/config/Python/ipy_repl.py", line 45, in <module>
from IPython.frontend.terminal.console.app import ZMQTerminalIPythonApp
ImportError: No module named app

有没有人可以解决这个问题?我安装了最新版本的 pyzmq 并在 Python 2.7.10-0 下运行

【问题讨论】:

    标签: python ipython sublimetext3 jupyter sublimerepl


    【解决方案1】:

    随着 IPython 4.0 的发布,结构已经完全改变,现在作为Jupyter 核心的内核实现,它能够使用many different languages 而非 Python 运行类似 IPython 的会话。然而,IPython 仍然是“参考实现”。

    通过这些更改,内部 API 也发生了相当大的变化,一些部分已被移动/重命名,或者根本不存在。我在 Github 上整理了 complete instructions on updating SublimeREPL for IPython 4 作为要点,但我将在这里回顾关键部分。

    您需要做的第一件事是确保您拥有 IPython 和 Jupyter 的所有组件,因为它已从一个整体包拆分为多个较小的包。运行

    [sudo] pip install -U ipython jupyter
    

    从命令行获取所有部分 - 不需要编译器。 sudo 是在您使用 Unix/Linux 系统并需要管理员访问权限的情况下,-U 标志与 --upgrade 的含义相同。

    完成后,打开 Sublime 并选择 Preferences → Browse Packages… 以在操作系统的文件浏览器应用程序(Finder、Windows 资源管理器、Nautilus 等)中打开您的 Packages 文件夹。打开SublimeREPL文件夹,然后是config,然后是Python,然后在Sublime中打开ipy_repl.py。删除其全部内容,并将其替换为上面 gist 链接中包含的文件(单击 here 获取原始复制和粘贴版本)。

    用新内容保存ipy_repl.py,应该就是这样!您现在可以以通常的方式打开 IPython REPL,您应该会看到:

    Jupyter Console 4.0.2
    
    [ZMQTerminalIPythonApp] Loading IPython extension: storemagic
    
    In [1]: 
    

    如果您想删除 [ZMQTerminalIPythonApp] 消息,请阅读要点中的说明。但是,该消息是无害的,因此您可以放心地忽略它。

    祝你好运!

    注意:这些更改已作为拉取请求提交给主 SublimeREPL 项目,但鉴于作者已经有一段时间没有开发插件了,这可能是而在它是主分支的一部分之前。

    【讨论】:

    • 感谢您的详细说明。现在我得到以下信息:
    • [ZMQTerminalIPythonApp] 正在加载 IPython 扩展:storemagic Jupyter Console 4.0.2 C:\Anaconda\python.EXE:python26.dll 的模块使用与此版本的 Python 冲突。 'ipykernel' 是一个包,不能直接执行
    • @VolodymyrKruglov 您使用的是哪个版本的 Python,pip 使用哪个版本来安装 IPython 和 Jupyter?
    • @VolodymyrKruglov 抱歉,我刚刚看到您使用的是 2.7.10。你在某个地方安装了 2.6 吗?
    • 我可以安装一个,但如果可能的话我不想安装
    猜你喜欢
    • 2016-04-27
    • 2014-02-27
    • 2016-03-06
    • 1970-01-01
    • 1970-01-01
    • 2018-01-23
    • 1970-01-01
    • 2014-11-23
    相关资源
    最近更新 更多