我在 Eclipse 中使用 PyDev 编写 Python 代码。我大量使用交互式 shell——这是我使用 Python 的主要原因。但是当我尝试将带有空行的代码粘贴到编辑器中时(通过 Ctrl-Alt-Enter 键绑定或直接剪切和粘贴),我遇到了“意外缩进”错误。一个打破的例子:
def test_function():
x = 1 + 2
y = x - 1
if x > y:
print('x > y')
return(y)
这会产生“IndentationError: unexpected indent”,即使这段代码基于 PEP 8 是完全合法的。原因当然是交互式 shell 自动缩进,它使用空行来表示结束一个代码块。根据一些搜索,我认为我需要的是 IPython 中的魔术 %paste 或关闭自动缩进的能力。
有没有办法在 PyDev 中粘贴带有空行的代码块而不会导致缩进错误?(两种可能的解决方法是注释空行或在上一行的末尾使用“\”。我正在寻找直接解决问题的方法。)