在Jupyter笔记本中,“cell magic”命令(带有两个百分号的前缀)在单元格的末尾结束并自动调用:
但是如果我在Jupyter控制台中尝试相同的操作,那么在任意数量的空白行之后命令永远不会结束:
只有当我以jupyter console
调用IPython时才会发生这种情况。如果我直接以ipython
调用IPython,则cell magic命令在一个空行后完成:
对于每个示例,Python和IPython的版本是相同的:一台机器上的Python 3.5.2和IPython 6.1.0(用pip安装),另一台机器上安装了Python 3.4.5和IPython 5.1.0(与Conda一起安装)
这是一个错误吗?或者,IPython的Jupyter默认配置是否与IPython自己的默认配置不同?
答案 0 :(得分:2)
是的,这是一个错误,细胞魔法假设在2个新线后结束。 Jupyter控制台处于维护状态 - 我们不知道很多人使用它,它有很多问题。
从技术上讲,我相信 jupyter控制台不使用(或尊重)" is_complete"来自协议的消息应该告诉它应该执行代码片段或是否应该插入换行符。
您可以尝试打开错误报告,但除非有人做公关,否则修补程序可能无法快速实施。