IPython 魔术 %粘贴:带有大代码块的无缩进错误



粘贴到一个大类(>800行(中时,似乎IPython可能会失去对缩进的跟踪,然后返回一个缩进错误:

In [1]: %paste
  File "<tokenize>", line 772
    (self.D['Department']==dept) &
    ^
IndentationError: unindent does not match any outer indentation level

可能是内存或终端溢出问题,但想在此处发布以供参考,因为人们可能会花费数小时尝试跟踪不存在的选项卡并将它们转换为空格。当你谷歌或SO的IndentationError时,"用空格替换制表符"实际上是唯一的解决方案。在这种情况下,这显然行不通。

这不是重复,这是一个类似的错误,但是一个非常不同的问题

我想出的唯一解决方案是从命令行调用代码块。IPython编译器似乎没有问题,问题可能出在魔术%paste缓冲区上。

$ ipython code_block.py