Python PyDev使用空行粘贴到控制台
我在Eclipse中使用PyDev编写Python代码。我大量使用交互式shell——这是我使用Python的主要原因。但是,当我尝试将带有空行的代码粘贴到编辑器中时(通过Ctrl-Alt Enter键绑定或直接剪切粘贴),我遇到了“意外缩进”错误。一个中断的示例: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) 这会产生“缩进
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)
当然,这太难看了。谢谢——我希望有更好的消息,但经过大量搜索,我想这可能是不可能的。这就是没有花括号的生活。