【问题标题】:Is there a quick way to decrease the indentation of multiple lines in Python?有没有一种快速的方法来减少 Python 中多行的缩进?
【发布时间】:2012-03-09 11:43:55
【问题描述】:

我是 python 编程的新手。我发现在 python 中减少代码块的缩进是很烦人的。例如,给定以下代码 sn -p

for i in range(density):
   if i < 5:
      x, y = rnd(0,shape[1]//2)*2, rnd(0,shape[0]//2)*2
      Z[y,x] = 1 
      ....
      ....

如果我注释if 语句,我必须逐个减少 if 块中行的缩进,有没有一种方法可以通过一个键击来执行此操作,因为我增加了块的缩进选择它们并按 TAB 键?我想这是依赖于环境的,所以您能否在 Eclipse+Pydev、VIM 和其他常用编辑器中提供解决方案?

【问题讨论】:

  • 这取决于编辑器。您必须具体研究每一项。
  • 在 Komodo 和 Visual Studio 中选择行并按 Shift+Tab。
  • 在这种特殊情况下,您还可以增加注释掉的“if”行的缩进。

标签: python eclipse pydev edit indentation


【解决方案1】:

在 vim 中,选择块,然后按 键。

在 Eclipse 中选择它,然后按 SHIFT + TAB

每个称职的代码编辑器都有一键缩进和缩进块的方法。

【讨论】:

  • 你需要任何 VIM 配置文件来实现它吗? @Borealid
  • 在 IDLE(Python 附带的 IDE)中,CTRL+[ dedents 和 CTRL+] indents.
  • 还有 C-c &lt; 用于 emacs(在 python 模式下)
  • 如果您使用的是 Windows 上 Canopy 内置的 Python 编辑器,则选择文本然后使用 shift+tab 快捷方式也可以。
  • 有什么方法可以配置 Eclipse 使用某些东西而不是 SHIFT + TAB 吗?我想让它使用 Ctrl + [ 就像 Sublime 使用...
【解决方案2】:

您也可以将 if 语句替换为:

if True:  # if i < 5:

别管其他所有内容 - 以后无需撤消缩进/缩进。

【讨论】:

    【解决方案3】:

    对于您的情况可能迟了,但如果对其他人有用:

    SHIFT + TAB 将对 Eclipse 中的选定文本进行取消缩进。

    【讨论】:

      【解决方案4】:

      使用 Preferences-Pydev-Editor 设置取消选中将制表符更改为空格。它会导致定位错误和您的问题。并测试其他选项,如 4 空格制表符、8 空格制表符等。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-04-12
        • 1970-01-01
        • 2010-11-29
        • 1970-01-01
        • 2010-12-30
        • 1970-01-01
        • 1970-01-01
        • 2011-09-24
        相关资源
        最近更新 更多