web-dev-qa-db-ja.com

Pythonで複数行のインデントを減らす簡単な方法はありますか?

私はpythonプログラミングの初心者です。pythonのコードブロックのインデントを減らすのは非常に面倒です。たとえば、次のコードを考えるとスニペット

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ブロックの行のインデントを1つずつ減らす必要があります。ブロックのインデントを増やすと、これを1回のキーストロークで実行できる方法があります。コードを選択して、 TAB キー?これは環境に依存していると思います。Eclipse+ Pydev、VIM、およびその他の一般的なエディターでそうするためのソリューションを提供していただけませんか?

29
sma

Vimでは、ブロックを選択してから、 < キー。

Eclipseでそれを選択してから、 SHIFT + TAB

ソルトに値するすべてのコードエディタには、ブロックのインデントとデデントを1つのキーで行う方法があります。

61
Borealid

Ifステートメントを次のように置き換えることもできます。

if True:  # if i < 5:

他はすべてそのままにしておきます-後で元に戻すインデント/インデントはありません。

8
PaulMcG

おそらくあなたのケースに遅れますが、他の人に役立つ場合:

SHIFT + TAB Eclipseで選択したテキストをインデント解除します。

3
sanja7s

Preferences-Pydev-Editor設定を使用して、タブをスペースに変更するのチェックを外します。それは戻り止めエラーとあなたの問題を作ります。 4スペースタブ、8スペースタブなどの他のオプションをテストします。

1
42n4