如何在ipython中使用%paste粘贴大代码文本?

时间:2014-05-20 16:33:01

标签: python ipython

我正在尝试使用%cpaste将代码粘贴到ipython中,但每当粘贴的代码太大(几乎100-150行代码)时,它就会停止实际读取输入缓冲区,因此会给出类似于以下内容的错误:

  File "<ipython-input-2-f23a5343110f>", line 133
    return(
SyntaxError: unexpected EOF while parsing

如果重要,我在emacs中使用bash并从那里运行ipython3 -i

编辑:有趣的是,如果我粘贴一半代码,按回车键,粘贴后半部分,按回车键,然后按--,然后输入,它会正确处理。

2 个答案:

答案 0 :(得分:0)

为了回答这个问题:

如评论中所述,粘贴代码的大小存在限制。最近版本的ipython增加了限制。

因此要么升级ipython(在我的设置版本2.3.1中没有问题,或者至少限制要大得多),或者按照我在问题中提到的那样进行升级:< / p>

  粘贴一半代码,按回车键,粘贴下半部分,按回车键,   然后 - 然后输入,它会正确处理它。

答案 1 :(得分:0)

我实际上设法解决了它。 它不是ipython问题,它是我们使用的终端控制台.. 我正在使用Xfce 0.4.7并遇到了问题。当我切换到Konsole 2.3.3时问题解决了,我可以粘贴大块文本。

也可以%paste,这也解决了这个问题。