Syntax 在IPython中允许前导空格的解决方法

Syntax 在IPython中允许前导空格的解决方法,syntax,whitespace,indentation,ipython,Syntax,Whitespace,Indentation,Ipython,我在Python中的标准工作模式是在终端中打开IPython的同时编辑文本文件。我一次写一行函数,然后将它们一次粘贴到IPython中。当一行错误时,我在文本编辑器中更正它,然后重新粘贴它 这过去工作得很好,但IPython的最新版本不接受缩进代码。一个建议的解决方案是使用qt终端,但我通常通过ssh会话登录。另一个建议的解决方案是使用%cpaste,但如果一次粘贴一行缩进代码,那么在开始和结束时分别粘贴%cpaste,则会增加两倍的开销;每行代码有2行开销。我现在所做的是在我开始使用文本编辑器

我在Python中的标准工作模式是在终端中打开IPython的同时编辑文本文件。我一次写一行函数,然后将它们一次粘贴到IPython中。当一行错误时,我在文本编辑器中更正它,然后重新粘贴它

这过去工作得很好,但IPython的最新版本不接受缩进代码。一个建议的解决方案是使用qt终端,但我通常通过ssh会话登录。另一个建议的解决方案是使用%cpaste,但如果一次粘贴一行缩进代码,那么在开始和结束时分别粘贴%cpaste,则会增加两倍的开销;每行代码有2行开销。我现在所做的是在我开始使用文本编辑器之前取消对每个块的插入,但这也是一种痛苦。还有其他想法吗?如果有办法将IPython永久置于%cpaste模式,或者该模式的任何部分使其忽略前导空格,那就太好了

另见:


感谢您刚刚提交了一份解决方案。对于由多个换行符分隔的大型块,仍然建议使用%cpaste。

我的标准工作模式。。。你能得到一个真正的IDE吗?有几十个。有很多比这更好的工作方式。您认为这不是最优的吗?qtconsole的一个优点是它可以通过ssh工作。您可以在服务器上运行内核,并启动通过ssh隧道连接到它的qtconsole,并且可以继续从各个端点使用相同的内核。我们有一个公开的问题,但它的低优先级:。如果您想使用它,也许作为IPython的扩展,我们很乐意为您提供如何使用它的指导。