Python PyDev使用空行粘贴到控制台

Python PyDev使用空行粘贴到控制台,python,eclipse,pydev,indentation,Python,Eclipse,Pydev,Indentation,我在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) 这会产生“缩进

我在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)
这会产生“缩进错误:意外缩进”,即使该代码基于PEP 8是完全合法的。当然,这是因为交互式shell会自动缩进内容,并且它使用一个空行来表示代码块的结束。基于一些搜索,我认为我需要的是像IPython中的魔法%粘贴或关闭自动缩进的功能


有没有一种方法可以在PyDev中粘贴带有空行的代码块而不会导致缩进错误?(两种可能的解决方法是注释空行或在前一行末尾使用“\”。我正在寻找可以直接解决问题的方法。)

不,没有办法做到这一点。交互式shell中的空行具有“现在开始运行此命令”的特殊含义,它与任何自动压头无关

您可以在每一空行的开头添加一个
#
,然后忽略它:

def test_function():
  x = 1 + 2
  y = x - 1
#
  if x > y:
    print('x > y')
#
  return(y)
当然,这太难看了。

谢谢——我希望有更好的消息,但经过大量搜索,我想这可能是不可能的。这就是没有花括号的生活。